关于Mybatis的各种配置文件
關(guān)于Mybatis的各種配置文件
項(xiàng)目大致目錄
pox.xml
<--配置jdk版本--> <build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>1.8</source><target>1.8</target><encoding>UTF-8</encoding></configuration></plugin></plugins></build> <--配置本地的tomcat--> <build><plugins><plugin><groupId>org.codehaus.cargo</groupId><artifactId>cargo-maven2-plugin</artifactId><version>1.2.4</version><configuration><container><containerId>tomcat7x</containerId><home>F:\Tomcat7</home></container><configuration><type>existing</type><home>F:\Tomcat7</home><properties> <cargo.servlet.port>8088-端口號(hào)</cargo.servlet.port> </properties> </configuration></configuration></plugin></plugins></build>mybatis-config.xml
<!-- 引入 jdbc.properties 也就是連接數(shù)據(jù)庫(kù)文件--><properties resource="jdbc.properties"></properties> <!--開(kāi)啟駝峰匹配 --><settings><setting name="mapUnderscoreToCamelCase" value="true"/></settings>要注意的是,開(kāi)啟駝峰匹配的前提是在java和數(shù)據(jù)庫(kù)中都遵循各自的駝峰命名規(guī)則,java中屬性:第一個(gè)單詞的首字母小寫(xiě),如果拼接多個(gè)單詞那么后面所有單詞的首字母都要大寫(xiě),比如:studenName或者studentAgeAndSex。數(shù)據(jù)庫(kù)中的命名規(guī)則和java差不多,就是把首字母大寫(xiě)換成下劃線,因?yàn)閿?shù)據(jù)庫(kù)不區(qū)分大小寫(xiě)(個(gè)人使用mysql) 比如:student_name,student_age_sex。只有當(dāng)實(shí)體類屬性名為studentName和對(duì)應(yīng)數(shù)據(jù)庫(kù)字段名為studen_name時(shí)才能匹配成功。如果是studentNname和studentname的話則不會(huì)匹配成功。
<typeAliases><!-- 設(shè)置單個(gè)類別名 別名為alias的值 也就是UserPojo--><!-- <typeAlias type="com.hisoft.pojo.UserPojo" alias="UserPojo"/> --><!-- 掃描包,也就是掃描包下所有的類 設(shè)置當(dāng)前包下所有類的別名為類名本身 --><package name="com.hisoft.pojo"/></typeAliases> <mappers><!-- 引入 mapper.xml 也就是sql語(yǔ)句 具體操作語(yǔ)句--><!-- <mapper resource="mapper.xml"/> --><!-- 在動(dòng)態(tài)代理的前提下 可以使用這個(gè)標(biāo)簽直接掃描包 --><package name="com.hisoft.mapper"/>什么是動(dòng)態(tài)代理,就是為了不需要寫(xiě)dao層的實(shí)體類,只要dao層即可,在mybatis中,dao層也被稱為mapper層,使用動(dòng)態(tài)代理的前提條件是:
1 接口名與對(duì)應(yīng)的mapper.xml配置文件 名稱相同,就是為了在掃描mapper層的時(shí)候,可以自動(dòng)映射對(duì)應(yīng)的mapper.xml配置文件,
2 對(duì)應(yīng)mapper.xml配置文件的空間名稱必須是接口的全路徑一致。
單例測(cè)試
這是test類中的代碼,和上面的動(dòng)態(tài)代理一起配合使用 //new 一個(gè)userDao對(duì)象private OrderMapper orderMapper;private SqlSession sqlSession;//定義成全局的對(duì)象@Before//執(zhí)行test方法之前執(zhí)行public void setUp() throws Exception {String resource ="mybatis-config.xml";//讀取xml配置文件InputStream is = Resources.getResourceAsStream(resource);//構(gòu)建SqlSessionFactorySqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is); //打開(kāi)SqlSession,得到sqlSession可以進(jìn)行curd的操作sqlSession = sqlSessionFactory.openSession();//userDao = new UserDaoImpl(sqlSession);//獲取mapper的動(dòng)態(tài)代理實(shí)現(xiàn)類orderMapper = sqlSession.getMapper(OrderMapper.class);} 數(shù)據(jù)源配置文件,也就是更改連接的數(shù)據(jù)庫(kù),default表示默認(rèn),更改default的值就可以更改連接的數(shù)據(jù)庫(kù),default的值也就是environment 標(biāo)簽中的id值 <environments default="development">第一個(gè)數(shù)據(jù)源<environment id="development"><transactionManager type="JDBC"/><dataSource type="POOLED"><property name="driver" value="${driverClass}"/><property name="url" value="${url}"/><property name="username" value="${username}"/><property name="password" value="${password}"/></dataSource></environment>第二個(gè)數(shù)據(jù)庫(kù)<environment id="test"><transactionManager type="JDBC"/><dataSource type="POOLED"><property name="driver" value="${driverClass}"/><property name="url" value="${urltest}"/><property name="username" value="${username}"/><property name="password" value="${password}"/></dataSource></environment></environments>jdbc.properties
對(duì)應(yīng)上面的數(shù)據(jù)源配置 ,上面標(biāo)簽的value值要與這個(gè)配置文件里面的名稱保持一致 driverClass=com.mysql.jdbc.Driverproperty url=jdbc:mysql:///mybatis?useUnicode=true&characterEncoding=utf8 username=root password=rooturltest=jdbc:mysql:///mybati?useUnicode=true&characterEncoding=utf8log4j.properties
log4j.rootLogger=DEBUG,A1 log4j.logger.org.mybatis=DEBUG log4j.appender.A1=org.apache.log4j.ConsoleAppender log4j.appender.A1.layout=org.apache.log4j.PatternLayout log4j.appender.A1.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss,SSS} [%t] [%c]-[%p] %m%n整理
總結(jié)
以上是生活随笔為你收集整理的关于Mybatis的各种配置文件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 数组和链表的区别以及应用场景
- 下一篇: mybatis高级查询