如何在台湾做企业网站/黄页网络的推广网站有哪些类型
Mybatis优化
- Mybatis优化
- 连接数据库的配置放在一个properties文件中
- 为实体类定义别名,简化sql映射xml文件中的引用
- 可以在src下加入log4j的配置文件打印日志信息
- 解决字段名与实体类属性名不相同的冲突
Mybatis优化
连接数据库的配置放在一个properties文件中
mybatis.xml中配置
<!--加载配置文件-->
<properties resource="db.properties"/>
<environments default="development"><environment id="development"><transactionManager type="JDBC" /><dataSource type="POOLED"><property name="driver" value="${driver}" /><property name="url" value="${url}" /><property name="username" value="${username}" /><property name="password" value="${password}" /></dataSource></environment></environments>
db.properties配置
driver = com.mysql.jdbc.Driverurl = jdbc:mysql://localhost:3306/数据库名username = rootpassword = 密码
为实体类定义别名,简化sql映射xml文件中的引用
Mybatis.xml
<typeAliases><typeAlias type="com.ykq.ibatis.bean.User" alias="user"/>
</typeAliases>
可以在src下加入log4j的配置文件打印日志信息
- 添加 jar:
log4j-1.2.16.jar - 配置文件
log4j.properties(方式一)
log4j.properties,
log4j.rootLogger=DEBUG, Console
#Console
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
log4j.logger.java.sql.ResultSet=INFO
log4j.logger.org.apache=INFO
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
log4j.xml(方式二)
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"><appender name="STDOUT" class="org.apache.log4j.ConsoleAppender"><layout class="org.apache.log4j.PatternLayout"><param name="ConversionPattern" value="%-5p %d{MM-dd HH:mm:ss,SSS} %m (%F:%L) \n" /></layout></appender><logger name="java.sql"><level value="debug" /></logger><logger name="org.apache.ibatis"><level value="debug" /></logger><root><level value="debug" /><appender-ref ref="STDOUT" /></root>
</log4j:configuration>
解决字段名与实体类属性名不相同的冲突
准备表和数据:
CREATE TABLE orders(order_id INT PRIMARY KEY AUTO_INCREMENT,order_no VARCHAR(20),order_price FLOAT
);
INSERT INTO orders(order_no, order_price) VALUES('aaaa', 23);
INSERT INTO orders(order_no, order_price) VALUES('bbbb', 33);
INSERT INTO orders(order_no, order_price) VALUES('cccc', 22);
定义实体类:
public class Order {
private int id;
private String orderNo;
private float price;
}
实现getOrderById(id)的查询:
<!--方式一: 通过在 sql 语句中定义别名-->
<select id="selectOrder" parameterType="int" resultType="_Order">select order_id id, order_no orderNo,order_price price from orders where order_id=#{id}
</select>
<!--方式二: 通过resultMap -->
<resultMap type="_Order" id="orderResultMap"><id property="id" column="order_id"/><result property="orderNo" column="order_no"/><result property="price" column="order_price"/>
</resultMap><select id="selectOrderResultMap" parameterType="int" resultMap="orderResultMap">select * from orders where order_id=#{id}
</select>