mybatis连接mysql
2016-04-22 21:36
465 查看
1、创建USER表
CREATE TABLE `user` (
`Id` int(11) NOT NULL auto_increment,
`NAME` varchar(255) NOT NULL default '',
`PASSWORD` varchar(255) NOT NULL default '',
PRIMARY KEY (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2、对应的实体类:User.java
package com.ruoshi.pojo;
public class User {
private int id;
private String name;
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
3、定义DAO接口:UserDao.java
package com.ruoshi.dao;
import java.util.List;
import com.ruoshi.pojo.User;
public interface UserDao {
public int insert(User user);
public int update(User user);
public int delete(String id);
public List<User> selectAll();
}
4、定义Mapper文件:com/ruoshi/config/UserDaoMapper.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.ruoshi.dao.UserDao">
<select id="selectAll" resultType="com.ruoshi.pojo.User">
select * from user order by id asc
</select>
<insert id="insert" parameterType="com.ruoshi.pojo.User">
insert into user(NAME,PASSWORD) values(#{name},#{password})
</insert>
<update id="update" parameterType="com.ruoshi.pojo.User">
update user set NAME=#{name},PASSWORD=#{password} where id=#{id}
</update>
<delete id="delete" parameterType="int">
delete from user where id=#{id}
</delete>
</mapper>
5、mybatis的配置文件:Mybatis-Config.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"></transactionManager>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/ruoshi" />
<property name="username" value="root" />
<property name="password" value="root" />
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/ruoshi/config/UserDaoMapper.xml" />
</mappers>
</configuration>
6、依赖的JAR:pom.xml
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.18</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.0</version>
</dependency>
7、测试类:
package mysql;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.Reader;
import java.util.Iterator;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import com.ruoshi.dao.UserDao;
import com.ruoshi.pojo.User;
public class MySqlTest {
/**
* @param args
* @throws FileNotFoundException
*/
public static void main(String[] args) throws FileNotFoundException {
String resource = "D:\\workspace\\ruoshi\\src\\main\\webapp\\WEB-INF\\Mybatis-Config.xml";
Reader reader = new FileReader(resource);
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
SqlSessionFactory factory = builder.build(reader);
SqlSession session = factory.openSession();
UserDao userDao = session.getMapper(UserDao.class);
User user = new User();
user.setName("ruoshi");
user.setPassword("123456");
userDao.insert(user);
List<User> users = userDao.selectAll();
Iterator<User> iter = users.iterator();
while(iter.hasNext()){
User u = iter.next();
System.out.println("用户名:"+u.getName()+"密码:"+u.getPassword());
}
userDao.update(user);
session.commit();
session.close();
}
}
CREATE TABLE `user` (
`Id` int(11) NOT NULL auto_increment,
`NAME` varchar(255) NOT NULL default '',
`PASSWORD` varchar(255) NOT NULL default '',
PRIMARY KEY (`Id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2、对应的实体类:User.java
package com.ruoshi.pojo;
public class User {
private int id;
private String name;
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
3、定义DAO接口:UserDao.java
package com.ruoshi.dao;
import java.util.List;
import com.ruoshi.pojo.User;
public interface UserDao {
public int insert(User user);
public int update(User user);
public int delete(String id);
public List<User> selectAll();
}
4、定义Mapper文件:com/ruoshi/config/UserDaoMapper.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.ruoshi.dao.UserDao">
<select id="selectAll" resultType="com.ruoshi.pojo.User">
select * from user order by id asc
</select>
<insert id="insert" parameterType="com.ruoshi.pojo.User">
insert into user(NAME,PASSWORD) values(#{name},#{password})
</insert>
<update id="update" parameterType="com.ruoshi.pojo.User">
update user set NAME=#{name},PASSWORD=#{password} where id=#{id}
</update>
<delete id="delete" parameterType="int">
delete from user where id=#{id}
</delete>
</mapper>
5、mybatis的配置文件:Mybatis-Config.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"></transactionManager>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/ruoshi" />
<property name="username" value="root" />
<property name="password" value="root" />
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/ruoshi/config/UserDaoMapper.xml" />
</mappers>
</configuration>
6、依赖的JAR:pom.xml
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.18</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.0</version>
</dependency>
7、测试类:
package mysql;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.Reader;
import java.util.Iterator;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import com.ruoshi.dao.UserDao;
import com.ruoshi.pojo.User;
public class MySqlTest {
/**
* @param args
* @throws FileNotFoundException
*/
public static void main(String[] args) throws FileNotFoundException {
String resource = "D:\\workspace\\ruoshi\\src\\main\\webapp\\WEB-INF\\Mybatis-Config.xml";
Reader reader = new FileReader(resource);
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
SqlSessionFactory factory = builder.build(reader);
SqlSession session = factory.openSession();
UserDao userDao = session.getMapper(UserDao.class);
User user = new User();
user.setName("ruoshi");
user.setPassword("123456");
userDao.insert(user);
List<User> users = userDao.selectAll();
Iterator<User> iter = users.iterator();
while(iter.hasNext()){
User u = iter.next();
System.out.println("用户名:"+u.getName()+"密码:"+u.getPassword());
}
userDao.update(user);
session.commit();
session.close();
}
}
相关文章推荐
- MySQL中的integer 数据类型
- MySQL存储过程
- mysql中int、bigint、smallint 和 tinyint的区别与长度
- mysql load data 导出、导入 csv
- source命令执行SQL脚本文件
- MySQL创建用户及权限控制
- MySQL管理数据表
- linux下mysql添加用户
- mysql procedure
- mysql触发器
- MySQL 备份和恢复策略
- mac下安装mysql(转载)
- mysql 修改编码 Linux/Mac/Unix/通用(杜绝修改后无法启动的情况!)
- MySQL数据的导出、导入(mysql内部命令:mysqldump、mysql)
- mysql数据行转列
- Linux下修改MySQL编码的方法
- MySQL Server 日志
- MySQL 安全事宜
- MySQL 备份与恢复