mybatis实现CRUD(不使用DAO)
生活随笔
收集整理的這篇文章主要介紹了
mybatis实现CRUD(不使用DAO)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?pom.xml
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.henu</groupId><artifactId>mybatis01_plus</artifactId><version>1.0-SNAPSHOT</version><packaging>jar</packaging><dependencies><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.4.5</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.6</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.10</version></dependency></dependencies></project>MybatisConfig.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><typeAliases><typeAlias type="com.henu.bean.User" alias="User" /></typeAliases><environments default="mysql"><environment id="mysql"><transactionManager type="JDBC"></transactionManager><dataSource type="POOLED"><property name="driver" value="com.mysql.jdbc.Driver"></property><property name="url" value="jdbc:mysql://localhost:3306/mybatisplus"></property><property name="username" value="root"></property><property name="password" value="123456"></property></dataSource></environment></environments><mappers><mapper resource="com/henu/bean/User.xml"></mapper></mappers></configuration>?User.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" > <mapper namespace="com.henu.bean.User"><insert id="insertUser">insert into user values (3,'往冬','123456')</insert><insert id="addUser" parameterType="User">insert into user values (#{id},#{username},#{password})</insert><delete id="delUser" parameterType="int">delete from user where id=#{id}</delete><update id="updUser" parameterType="User">update user set username=#{username},password=#{password} where id=#{id}</update><select id="findAll" resultType="User" >select * from user</select><select id="findUserById" parameterType="int" resultType="User" >select * from user where id=#{id}</select><select id="findUserByUsername" parameterType="String" resultType="User" >select * from user where username like concat('%',#{username},'%')</select><!-- eg:根據姓名和密碼查詢 --><select id="findUserByCondition" parameterType="java.util.Map" resultType="User" >select * from user where username = #{username} and password = #{password}</select></mapper>?bean
package com.henu.bean;import java.io.Serializable;/*** @author George* @description**/ public class User implements Serializable {private String id;private String username;private String password;public User() {}public User(String id, String username, String password) {this.id = id;this.username = username;this.password = password;}public String getId() {return id;}public void setId(String id) {this.id = id;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}@Overridepublic String toString() {return "User{" +"id='" + id + '\'' +", username='" + username + '\'' +", password='" + password + '\'' +'}';} }MybatisTest
package com.henu.test;import com.henu.bean.User; import org.apache.ibatis.io.Resources; import org.apache.ibatis.session.ResultHandler; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.apache.ibatis.session.SqlSessionFactoryBuilder; import org.junit.After; import org.junit.Before; import org.junit.Test;import java.io.IOException; import java.io.InputStream; import java.util.HashMap; import java.util.List; import java.util.Map;/*** @author George* @description**/ public class MybatisTest {private static InputStream is;private static SqlSessionFactoryBuilder builder;private static SqlSessionFactory factory;private static SqlSession sqlSession;@Beforepublic void init() throws IOException {is = Resources.getResourceAsStream("MybatisConfig.xml");builder = new SqlSessionFactoryBuilder();factory = builder.build(is);sqlSession = factory.openSession();}@Afterpublic void destory() throws IOException {sqlSession.close();is.close();}@Testpublic void insertUser() {sqlSession.insert("insertUser");sqlSession.commit();//針對增刪改,必須提交事務System.out.println("successful commit");}@Testpublic void addUser(){User user = new User("4","李太","56345");sqlSession.insert("addUser",user);sqlSession.commit();System.out.println("success commit");}@Testpublic void delUser(){sqlSession.delete("delUser",1);sqlSession.commit();System.out.println("success commit");}@Testpublic void updUser(){User user = new User("3","天使","56345");sqlSession.delete("updUser",user);sqlSession.commit();System.out.println("success commit");}/*查詢并不對表做出改變,所以不需要提交事務*/@Testpublic void findAll(){List<User> list = sqlSession.selectList("findAll");for (User user : list) {System.out.println(user);}System.out.println("success commit");}@Testpublic void findUserById(){User user = sqlSession.selectOne("findUserById",2);System.out.println(user);System.out.println("success commit");}@Testpublic void findUserByUsername(){List<User> list = sqlSession.selectList("findUserByUsername", "喬");for (User user : list) {System.out.println(user);}System.out.println("success commit");}@Testpublic void findUserByCondition(){Map map = new HashMap();map.put("username","喬治");map.put("password","123456");List<User> list = sqlSession.selectList("findUserByCondition", map);for (User user : list) {System.out.println(user);}System.out.println("success commit");}}?
總結
以上是生活随笔為你收集整理的mybatis实现CRUD(不使用DAO)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何看懂dtd文档?
- 下一篇: mybatis集成JNDI【注部署项目后