SSM组合框架之My-Batis项目创建示例,帮助新手了解搭建过程
相关步骤:
(这里使用Maven创建项目,各个jar包都需要手工导入项目)
1.数据库创建表结构,并插入测试数据(该步骤自己随意创建)
2.创建项目(此处不再详细说明)
3.创建实体类,并生成get\set\toString等方法(需要根据1创建的表生成)
public class userinfo { private String userid ; private String username ; private String passwd ; private String email ; private String phone ; public String getUserid() { return userid; } public String getUsername() { return username; } public String getPasswd() { return passwd; } public String getEmail() { return email; } public String getPhone() { return phone; } public void setUserid(String userid) { this.userid = userid; } public void setUsername(String username) { this.username = username; } public void setPasswd(String passwd) { this.passwd = passwd; } public void setEmail(String email) { this.email = email; } public void setPhone(String phone) { this.phone = phone; } @Override public String toString() { return "userinfo [userid=" + userid + ", username=" + username + ", passwd=" + passwd + ", email=" + email + ", phone=" + phone + "]"; } }
4.创建my-batis.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://local:3306/test?allowPublicKeyRetrieval=true"/> <property name="username" value="root"/> <property name="password" value="123456"/> </dataSource> </environment> </environments> <!--映射配置文件路径--> <mappers> <mapper resource="com/lesen/mapper/userMapper.xml"/> </mappers> </configuration>
5.配置映射文件userMapper.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!-- 用于定义一个映射文件的根节点 namespace属性是用来配置命名空间 resultType是sql映射文件中定义返回值类型 --> <mapper namespace="com.lesen.entity.userinfo"> <!-- 查询所有数据 --> <select id="userList" resultType="com.lesen.entity.userinfo"> select * from userinfo </select> <!-- 按条件查询 --> <select id="usergetOne" resultType="com.lesen.entity.userinfo" parameterType="java.util.Map"> select * from userinfo where userid='${userid}' and 1='${one}' </select> </mapper>
6.这里给出配置log的部分配置文件
文件放在项目的src下面
log4j.rootLogger=DEBUG,Console,Stdout #[Level] DEBUG 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.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.appender.Stdout = org.apache.log4j.DailyRollingFileAppender log4j.appender.Stdout.File = E://logs/log.log log4j.appender.Stdout.Append = true log4j.appender.Stdout.Threshold = DEBUG log4j.appender.Stdout.layout = org.apache.log4j.PatternLayout log4j.appender.Stdout.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
7.创建测试类进行测试
import java.io.IOException; import java.io.InputStream; import java.sql.SQLException; import java.util.HashMap; import java.util.List; import java.util.Map; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import com.lesen.entity.SysParams; import com.lesen.entity.userinfo; public class test { private static SqlSessionFactory sqlsession=null; public static void main(String[] args) throws SQLException { Tools tools=new Tools(); // String sql ="select count(1) str from document where id=3 and userid='徐念驰'"; //Mybatis测试 //1.创建对象 SqlSessionFactoryBuilder sfb=new SqlSessionFactoryBuilder(); //2.加载配置文件 try { InputStream istr =Resources.getResourceAsStream("my-batis.xml"); //3.创建查询对象 sqlsession=sfb.build(istr); SqlSession ss=sqlsession.openSession(); System.out.println(ss.selectList("userList").toString()); userinfo user =new userinfo(); user=(userinfo) ss.selectList("userList").get(0); System.out.println("1--------------"+user.toString()); user=(userinfo) ss.selectList("userList").get(1); System.out.println("2--------------"+user.toString()); Map map=new HashMap(); map.put("userid", "123456"); map.put("one", 1); user=ss.selectOne("usergetOne",map); System.out.println("one-------"+user.toString()); } catch (IOException e) { e.printStackTrace(); } } }
–只要能输出查询结果到这里完结