Mybitas配置

来源:互联网 发布:开淘宝客的条件 编辑:程序博客网 时间:2024/06/05 03:24

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">第一次写博客不好的地方还请大家指点</span>

首先创建一个java项目名字自定义结构如下


导入jar包



创建数据库


不想手动创建的话也可以将下面的sql脚本保存成*.sql文件还原到数据库中例如mybitas.sql

/*SQLyog Ultimate v11.27 (32 bit)MySQL - 5.6.29 : Database - mybitas**********************************************************************//*!40101 SET NAMES utf8 */;/*!40101 SET SQL_MODE=''*/;/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;CREATE DATABASE /*!32312 IF NOT EXISTS*/`mybitas` /*!40100 DEFAULT CHARACTER SET utf8 */;USE `mybitas`;/*Table structure for table `student` */DROP TABLE IF EXISTS `student`;CREATE TABLE `student` (  `id` int(32) NOT NULL AUTO_INCREMENT,  `name` varchar(32) DEFAULT NULL,  `sex` varchar(2) DEFAULT NULL,  `age` int(10) DEFAULT NULL,  PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;/*Data for the table `student` */LOCK TABLES `student` WRITE;insert  into `student`(`id`,`name`,`sex`,`age`) values (1,'小明','男',12),(2,'小红','女',13);UNLOCK TABLES;/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

准备工作完成!

现在开始~~~

mappings里面存放的都是xml映射文件为了目录结构看着更加清晰在mappings下面创建的文件夹

与com下面的文件夹是一一对应的。

编写sys-dao-StudentDao


package com.sys.dao;import com.sys.entity.Student;public interface StudentDao {public Student queryById(int id);public Student queryByName(String name);public void insert(Student student);public void update(Student student);public void delete(int id);}

编写sys-entity-Student


package com.sys.entity;public class Student {//学生 idprivate int id;//姓名private String name;//性别private String sex;//年龄private int age;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 getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}@Overridepublic String toString() {return "Student [id=" + id + ", name=" + name + ", sex=" + sex+ ", age=" + age + "]";}}
编写sys-service-StudentService


package com.sys.service;import java.io.Reader;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.sys.dao.StudentDao;import com.sys.entity.Student;public class StudentService {public StudentService() {}private static SqlSessionFactory sqlSessionFactory;private static Reader reader;//private StudentDao studentDao;static {try {reader = Resources.getResourceAsReader("com/mybitas_config.xml");sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);} catch (Exception e) {e.printStackTrace();}}public static SqlSessionFactory getSession() {return sqlSessionFactory;}/** * 按ID查询 *  * @param id * @return */public Student queryById(int id) {SqlSession session = sqlSessionFactory.openSession();Student student = null;StudentDao studentDao = session.getMapper(StudentDao.class);student = studentDao.queryById(id);session.close();System.out.println("查询完毕");return student;}/** * 按名称查找 *  * @param id * @return */public Student queryByName(String name) {SqlSession session = sqlSessionFactory.openSession();Student student = null;StudentDao studentDao = session.getMapper(StudentDao.class);student = studentDao.queryByName(name);session.close();System.out.println("查询完毕");return student;}/** * 添加 *  * @param student * @return */public void insert(Student student) {SqlSession session = sqlSessionFactory.openSession();StudentDao studentDao = session.getMapper(StudentDao.class);studentDao.insert(student);session.commit();session.close();System.out.println("添加完毕");}/** * 更新 *  * @param student * @return */public void update(Student student) {SqlSession session = sqlSessionFactory.openSession();StudentDao studentDao = session.getMapper(StudentDao.class);studentDao.update(student);session.commit();session.close();System.out.println("更新完毕");}/** * 删除 *  * @param id * @return */public void delete(int id) {SqlSession session = sqlSessionFactory.openSession();StudentDao studentDao = session.getMapper(StudentDao.class);studentDao.delete(id);session.commit();session.close();System.out.println("删除完毕");}}

编写sys-web-StudentController


package com.sys.web;import com.sys.entity.Student;import com.sys.service.StudentService;public class StudentController {public static void main(String[] args) {StudentService studentService = new StudentService();//查询Student student = new Student();student = studentService.queryById(1);System.out.println(student);//添加//Student student = new Student();//student.setName("大仙");//student.setSex("男");//student.setAge(22);//studentService.insert(student);//System.out.println(studentService.queryByName("大仙"));//修改//Student student = new Student();//student = studentService.queryById(1);//System.out.println(student);//student.setAge(40);//studentService.update(student);//student = studentService.queryById(1);//System.out.println(student);//删除//Student student = new Student();//student = studentService.queryByName("大仙");//System.out.println(student);//studentService.delete(3);//student = studentService.queryByName("大仙");//System.out.println(student);}}

创建mappings-sys-StudentMapping.xml


然后将dao与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.sys.dao.StudentDao"><select id="queryById" parameterType="int" resultType="Student">SELECT * FROM studentWHERE id=#{id}</select><select id="queryByName" parameterType="String" resultType="Student">SELECT * FROM studentWHERE name=#{name}</select><insert id="insert" parameterType="Student">INSERT INTO student(name, sex, age) VALUES (#{name}, #{sex}, #{age})</insert><update id="update" parameterType="Student">UPDATE student SET name = #{name}, sex = #{sex},age = #{age}WHERE id = #{id}</update><delete id="delete" parameterType="int">DELETE * FROM student WHERE id = #{id}</delete></mapper>
到此已经完成了一大部分了


咱们继续

创建jdbc.properties和mybitas_config.xml


jdbc.properties

#jdbc Driverdriver=com.mysql.jdbc.Driverurl=jdbc:mysql://localhost:3306/mybitas?useUnicode=true&characterEncoding=utf-8username=rootpassword=root

mybitas_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><properties resource="com/jdbc.properties"></properties><typeAliases>         <typeAlias alias="Student" type="com.sys.entity.Student"/>     </typeAliases> <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><mappers><mapper resource="com/mappings/sys/StudentMapping.xml" /></mappers></configuration> 

然后运行StudentController
测试一下



大功告成大笑




0 0
原创粉丝点击