検索
ホームページJava&#&チュートリアルMyBatis 入門 (7) --- リバース エンジニアリング

1. リバースエンジニアリング

1.1、概要

mybatis にはプログラム番号で記述された SQL が必要です。

mybatisは、単一のテーブルに対するmybatisの実行に必要なコードを自動生成できるリバースエンジニアリングを公式に提供しています

(mapper、java、maper.xml、po...)

一般的に、データベースからJavaコードへ生成されます。 . プロセス

2. jar パッケージ

2.1、mybatis-generator

MyBatis 入門 (7) --- リバース エンジニアリング3.1、generatorConfig.xml を設定します。

br/>PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
"http:/ / /mybatis.org/dtd/mybatis-generator-config_1_0.dtd">



"
"
" " " & gt; l & lt;/jdbcoconnection & gt;
& lt;-default False、JDBC Decimal と NUMERIC を True と同様に分析します、JDBC Decimal
および Numeric Types は java.math に解析されます。 ;javaModelGenerator targetPackage=" com.mybatis.po "
ターゲットプロジェクト =".src "& gt; lt; プロパティ名 ="enableSubpackages "value =" false " /& gt;


!--enableSubPackages: 使用するかどうかパッケージのサフィックスとしてのスキーマ -->
-> =" XMLMAPPER"
targetPackage="com.pb.mybatis.mapper" age" value="false" />
" " ="ブログ">
" "




4. Java プログラムを実行して

4.1、Java プログラム


を生成します。

import java.io.File;import java.io.IOException;import java.util.ArrayList;import java.util.List;import org.mybatis.generator.api.MyBatisGenerator;import org.mybatis.generator.config.Configuration ;import org.mybatis.generator.config.xml.ConfigurationParser;import org.mybatis.generator.Exception.XMLParserException;import org.mybatis.generator.internal.DefaultShellCallback;public class GeneratorSqlmap { public voidgenerator() throws Exception{

リスト警告 = 新しい ArrayList();        ブール値の上書き = true;        // 逆方向工程構成文件を指定
File configFile = new File("generatorConfig.xml");
ConfigurationParser cp = new ConfigurationParser(warnings);
Configuration config = cp.parseConfiguration(configFile);
DefaultShellCallback callback = new DefaultShellCallback(overwrite);
MyBatisGenerator myBatisGen erator = new MyBatisGenerator(config,
コールバック, 警告);
myBatisGenerator.generate (null);

}
public static void main(String[] args) throws Exception { try {
GeneratorSqlmapgeneratorSqlmap = new GeneratorSqlmap();
generatorSqlmap.generator( );
} catch (例外 e) {
e. printStackTrace();
}

}


MyBatis 入門 (7) --- リバース エンジニアリング

五、测试

5.1、测试类

パッケージ com.pb.ssm.mapper;import static org.junit.Assert.fail;import java.util.Date;import java.util.List;import javax.crypto.Cipher;import org.junit.Before;import org .junit.Test;import org.springframework.context.applicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import com.pb.ssm.po.Author;import com.pb.ssm.po.AuthorExample;import com. pb.ssm.po.AuthorExample.Criteria;public class AuthorMapperTest { private ApplicationContext applicationContext;    private AuthorMapper authorMapper;

@Before public void setUp() throws Exception {
applicationContext=new ClassPathXmlApplicationContext("ApplicationContext.xml");
authorMapper=(AuthorMapper) applicationContext.getBean("authorMapper");
}
//根元条件查询记录数 @Test public void testCountByExample() {
AuthorExample example=new AuthorExample();        // 条件を追加できます、条件を追加できませんすべて
Criteria criteria=example.createCriteria();        //追加条件、介绍不是空的 criteria.andAuthorBioIsNotNull();        int num=authorMapper.countByExample(example);
System.out.println("num="+num);
}
// 条件删除 @Test public void testDeleteByExample() {
AuthorExample example=new AuthorExample();        // 追加条件、不追加条件默认查询全部
Criteria criteria=example.createCriteria();
criteria.andAuthorUsernameEqualTo("程序员");        int num=authorMapper.deleteByExample(example);
System.out.println("num="+num);

}
//主键ID删除 @Test public void testDeleteByPrimaryKey() { int num=authorMapper.deleteByPrimaryKey( 18);
System.out.println("num="+num);
} //插入 @Test public void testInsert() {

作成者 author=new Author();
author.setAuthorUsername( 「再测试一下」 ");
author.setAuthorPassword("admin123");
author.setAuthorEmail("admin1234@QQ.com");        

int num=authorMapper.insert(author);
System.out.println("num="+num);        //この方法の插入、默认はデータ库自追加IDを返します、必要に応じて手動で追加できます
System.out.println("插入後のID"+author.getAuthorId());

} //插入@ Test public void testInsertSelective() {
著者 author=new Author();
author.setAuthorUsername("再测试一下");
author.setAuthorPassword("admin123");
author.setAuthorEmail("admin123) 4@qq.com」 );
author.setRegisterTime(new Date());        

int num=authorMapper.insert(author);
System.out.println("num="+num);        //この方法の插入、默认はデータセットの自動追加IDを返しません、必要に応じて手動で追加できます
System.out.println("插入後のID"+author.getAuthorId());

} //自動設定条件查询 @Test public void testSelectByExample() { //一个对象
AuthorExample authorExample=new AuthorExample();        //创建基準对象追加条件と接
Criteria criteria=authorExample.createCriteria();        // 必要手動加%
criteria.andAuthorUsernameLike("%张三%");

List list=authorMapper.selectByExample(authorExample);
System.out.println(list.size());
}
//主キー ID に基づくクエリ @Test public void testSelectByPrimaryKey() {
著者 author= Mapper.selectByPrimaryKey(6);
System.out.println(author.getAuthorUsername()+"..."+author.getAuthorBio());
}

@Test public void testUpdateByExampleSelective() {
failed("まだ実装されていません ");
}

@Test public void testUpdateByExample() {
failed("まだ実装されていません");
}

@Test public void testUpdateByPrimaryKeySelective() {
failed( "まだ実装されていません");
}

@Test public void testUpdateByPrimaryKey() {
failed("まだ実装されていません");
}

}

以上が MyBatis 入門 (7)---リバースエンジニアリングの内容です。関連コンテンツについては、PHP Chinese Net (www.php.cn) にご注目ください。


声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール