SpringWeb增删改查
模型类:
package com;
public class Model {
private int id;
private String name;
private String dtype;
private String hospital;
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 getDtype() {
return dtype;
}
public void setDtype(String dtype) {
this.dtype = dtype;
}
public String getHospital() {
return hospital;
}
public void setHospital(String hospital) {
this.hospital = hospital;
}
}
连接类:
package util;
import java.io.IOException;
import java.io.Reader;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
public class MyBatisUtil {
private final static SqlSessionFactory sqlSessionFactory; //单例SqlSessionFactory对象
static{
String resource = "mybatis-config.xml"; //MyBatis配置文件,位于src路径
Reader reader = null;
try {
reader = Resources.getResourceAsReader(resource);
} catch (IOException e) {
System.out.println(e.getMessage());
}
sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
}
public static SqlSessionFactory getSqlSessionFactory(){ //返回单例SqlSessionFactory对象
return sqlSessionFactory;
}
}
接口类:
package mapper;
import java.util.List;
import com.Model;
public interface CrMapper {
// 获取ID对象
public Model selectModel(int id);
//插入一条记录
public void addModel(Model model);
//删除一条记录
public Model deletModel(int id);
//更新Model对象
public void updateModel(Model model);
//获取Model全部对象,并封装成一个集合
public List<Model> allModel();
}
接口映射xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper SYSTEM "http://mybatis.org/dtd/mybatis-3-mapper.dtd" PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN">
<!-- 映射器名字空间,即BlogMapper对象的完整路径名 -->
-<mapper namespace="mapper.CrMapper">
<!-- 新增记录,映射SQL插入语句。id为当前命名空间中唯一的标识符,可 以被用于引用该语句。当映射器接口中的某一方法与id值一致时,就会执行 该语句。parameterType属性定义方法参数类型 -->
<insert parameterType="com.Model" id="addModel"> insert into a(id,name,dtype,hospital) values(#{id},#{name},#{dtype},#{hospital}) </insert>
<!-- 修改记录 -->
<update parameterType="com.Model" id="updateModel"> update a set name=#{name},dtype=#{dtype}, hospital=#{hospital} where id=#{id} </update>
<!-- 删除记录 -->
<delete parameterType="int" id="deletModel"> delete from a where id=#{id} </delete>
<!-- 查询单条记录,映射SQL查询语句 -->
<select parameterType="int" id="selectModel" resultType="com.Model"> select * from a where id=#{id} </select>
<!-- 查询所有记录 -->
<select id="allModel" resultType="com.Model"> select * from a </select>
</mapper>
测试类:
package test;
import java.util.List;
import mapper.CrMapper;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import util.MyBatisUtil;
import com.Model;
public class Test {
public static void main(String[] args) {
SqlSessionFactory factory=MyBatisUtil.getSqlSessionFactory();
SqlSession session=factory.openSession();
//实例化对象
Model model=new Model();
model.setName("cc");
model.setDtype("33");
model.setHospital("33");
CrMapper crMapper = session.getMapper(CrMapper.class);
crMapper.addModel(model);
//提交
session.commit();
//关闭
session.close();
}
//新增一条记录
public void testCr(){
SqlSessionFactory factory=MyBatisUtil.getSqlSessionFactory();
SqlSession session=factory.openSession();
//实例化对象
Model model=new Model();
model.setName("cc");
model.setDtype("33");
model.setHospital("33");
CrMapper crMapper = session.getMapper(CrMapper.class);
crMapper.addModel(model);
//提交
session.commit();
//关闭
session.close();
}
public void testAll(){
//查询所有
SqlSession session =MyBatisUtil.getSqlSessionFactory().openSession();
CrMapper crMapper=session.getMapper(CrMapper.class);
List<Model> list=crMapper.allModel();
for(Model model:list){
//显示model对象信息
System.out.println("id:"+model.getId()+
"\t姓名:\t"+model.getName()+
"\t类型:\t"+model.getDtype()+
"\t医生:\t"+model.getHospital());
}
//关闭
session.close();
}
public void testuptate(){
//修改
SqlSession session=MyBatisUtil.getSqlSessionFactory().openSession();
CrMapper crMapper=session.getMapper(CrMapper.class);
//根据id查询后修改字段
Model model=new Model();
model=crMapper.selectModel(3);
model.setName("王菲");
model.setDtype("外科");
model.setHospital("1");
crMapper.updateModel(model);
session.commit();
session.close();
}
public void testdelete(){
SqlSession session=MyBatisUtil.getSqlSessionFactory().openSession();
CrMapper crMapper=session.getMapper(CrMapper.class);
//根据id删除
crMapper.deletModel(2);
//提交
session.commit();
//关闭
session.close();
}
}
SpringWeb增删改查的更多相关文章
- SpringMVC4+MyBatis3+SQLServer 2014 整合(包括增删改查分页)
前言 说起整合自然离开ssm,我本身并不太喜欢ORM,尤其是MyBatis,把SQL语句写在xml里,尤其是大SQL,可读性不高,出错也不容易排查. 开发环境 idea2016.SpringMVC4. ...
- 搭建ssm框架,可实现登录和数据展示以及增删改查
需求: 后台使用ssm(spring-springMVC-mybatis)进行整合 前台使用bootstrap框架 前后台交互使用Ajax进行发送 表结构: 登录页面后显示所有用户信息,可对每条进行增 ...
- sssp-springmvc+spring+spring-data-jpa增删改查
环境:IDE:eclipse.jdk1.7.mysql5.7.maven 项目结构图 上面目录结构你可以自己创建 搭建框架 首先加入maven依赖包以及相关插件 <dependencies> ...
- springMVC实现增删改查
首先需要准备好一张数据库表我这里用emp这张表:具体代码: /* SQLyog 企业版 - MySQL GUI v8.14 MySQL - 5.1.73-community ************* ...
- 1.SSM整合_单表的增删改查
目标:增删改查 环境:Maven+Eclipse+Tomcat7+JDK7 思维导图: 表结构 目录结构 依赖 <dependencies> <dependency> < ...
- IDEA搭建SSM实现登录、注册,数据增删改查功能
本博文的源代码:百度云盘/java/java实例/SSM实例/SSM实现登录注册,增删改查/IDEA搭建SSM实现登录,注册,增删改查功能.zip 搭建空的Maven项目 使用Intellij id ...
- SpringMVC+SpringJdbc+SQLServer+EasyUI增删改查
前言 前天用SpringJdbc连接了一把SQLServer,早上起来用SpringMVC+SpringJdbc+EasUI写了个增删改查的demo,主要是熟悉下SpringMVC相关知识点,如vie ...
- idea+spring4+springmvc+mybatis+maven实现简单增删改查CRUD
在学习spring4+springmvc+mybatis的ssm框架,idea整合简单实现增删改查功能,在这里记录一下. 原文在这里:https://my.oschina.net/finchxu/bl ...
- IDEA+Maven 整合SSM框架实现简单的增删改查(新手入门,傻瓜操作)
原博客地址:https://blog.csdn.net/khxu666/article/details/79851070 选用SSM框架的原因在目前的企业级Java应用中,Spring框架是必须的.S ...
随机推荐
- php处理表单中的复选框问题以及js实现全选
做的一个项目中遇到了全选和取消全选的问题,这是一个很普遍的功能,,虽然我们经常用到,但是真正做起来却发现行不通,在网上找了些,大部分都是ie,但是谷歌内核浏览器不能正常实现,所以经过小小的调整,今天就 ...
- 【小练习03】CSS-表格(table)--天气预报
表格基础知识链接:http://blog.csdn.net/baidu_37107022/article/details/71713281 练习要求实现如下效果图: 代码演示 <!DOCTYPE ...
- 一些java考过的测试题和自己制作模拟服务端和客户端
媒体 1,java环境变量: PATH: .;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; CLASSPATH: .;%JAVA_HOME%\jre\lib\rt.jar ...
- Python os.walk的用法与举例
os.walk(top, topdown=True, onerror=None, followlinks=False) 可以得到一个三元tupple(dirpath, dirnames, filena ...
- android网络监测
public static boolean isNetworkConnected(Context context) { if (context != null) { ConnectivityManag ...
- 动态添加Redis密码认证
如果redis已在线上业务使用中,但没有添加密码认证,那么如何在不影响业务服务的前提下给redis添加密码认证,就是一个需要仔细考虑的问题. 本文描述一种可行的方案,适用于客户端使用了jedis连接池 ...
- kali&BT安装好之后无法上网或者无法获得内网IP
大家都知道,要想进行内网渗透攻击,你必须要在那个内网里. 但是大家在Vmware里安装kali的时候,大多数用户为了方便,未选择桥接模式,而是选择了使用与本机共享的IP网络当然,这样能上网,但是你的虚 ...
- spring非controller类获取service方法
ApplicationContext ctx = new ClassPathXmlApplicationContext("spring.xml"); pushMessageServ ...
- python基础之字典dict和集合set
作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7043642.html python基础之字典dict和集合set 字典dic ...
- [0] (VDP)垂直开发模式
垂直管理 网格化管理 属地管理 横向管理 面向接口编程 面向对象编程(OOP) 设计模式(GOF.MVC.SOA) 依赖注入(DI/IoC) 面向方面编程(AOP) 领域驱动开发(DDD) 测试驱动开 ...