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();
    }
}
时间: 2024-10-05 14:42:11

SpringWeb增删改查的相关文章

SSM框架+thymeleaf实现基本的增删改查

前言 本文使用了SSM框架.thymeleaf和jquery实现了基本的增删改查. 名词解释 SSM框架:springMVC.spring.mybatis thymeleaf:一个与Velocity.FreeMarker类似的模板引擎 jquery:一个快速.简洁的JavaScript框架 程序结构 本程序框架是用maven建出来的,具体如图: 程序源码 pom.xml <?xml version="1.0" encoding="UTF-8"?> <

SSM+dubbo+zookeeper实现基本的增删改查

前言 本文中使用的项目是由上一篇文章中的项目改造而来.具体来说,就是引入了dubbo和zookeeper,并将Controller层与service层dao层进行了拆分,使双方通过service接口远程调用的形式,再次实现了基本的增删改查. 上一篇文章:http://www.cnblogs.com/hanzx/p/10016468.html 名词解释 dubbo:dubbo是阿里开源的一款优秀的java RPC框架,可以配合spring和zookeeper使用.它提供了这些功能:面向接口的远程方

springMVC实现增删改查

首先需要准备好一张数据库表我这里用emp这张表:具体代码: 1 /* 2 SQLyog 企业版 - MySQL GUI v8.14 3 MySQL - 5.1.73-community 4 ********************************************************************* 5 */ 6 /*!40101 SET NAMES utf8 */; 7 8 create table `emp` ( 9 `empno` double , 10 `en

使用纯Java配置SSM框架实现基本的增删改查(不使用spring XML)

前言 本文不使用spring XML,而是采用Java配置SSM框架的形式实现了基本的增删改查. 本文中的源码继承自https://www.cnblogs.com/hanzx/p/10016468.html中的程序,删除掉了webapp文件夹,里面的模板全部转移到resources下,其余文件均已删除. 核心框架已升级.spring系列已升级使用5.0.1,mybatis使用3.4.5,mybatis-spring使用1.3.1. 名词解释 SSM框架:springMVC.spring.myba

idea+spring4+springmvc+mybatis+maven实现简单增删改查CRUD

在学习spring4+springmvc+mybatis的ssm框架,idea整合简单实现增删改查功能,在这里记录一下. 原文在这里:https://my.oschina.net/finchxu/blog/3007984 工作环境: Windows 10 jdk8(1.8) IntelliJ IDEA spring 4 和 springMVC MySQL 5.7 maven 3.3 mybatis 3.4 DBCP Tomcat 8.5 项目上传到了Github方便查看:https://gith

Python 模拟SQL对文件进行增删改查

1 #!/usr/bin/env python 2 # _*_ coding:UTF-8 _*_ 3 # __auth__: Dalhhin 4 # Python 3.5.2,Pycharm 2016.3.2 5 # 2017/05/15 6 7 import sys,os 8 9 def where(dbfile,where_list): #条件是一个list 10 11 def and_or_where(sub_where_list): 12 '''获取and或同时含有and.or关键字的条

【黑马Android】(04)数据库的创建和sql语句增删改查/LinearLayout展示列表数据/ListView的使用和BaseAdater/内容提供者创建

数据库的创建和sql语句增删改查 1. 加载驱动. 2. 连接数据库. 3. 操作数据库. 创建表: create table person( _id integer primary key, name varchar(20), age integer ); 添加: insert into person(name, age) values('lisi', 19); 删除: delete from person where _id = 1; 修改: update person set name =

ssm框架搭建+easyui增删改查实现

闲来无事,看了看别人的博客文档也跟着敲了敲,特地记录下来,方便以后学习: spring版本:4.0.6 mybatis版本:3.2.5 所有jar包打包下载:http://pan.baidu.com/s/1qLEaU 1.项目目录结构 其中,controller包下存放控制层文件,dao下存放各个model类相关的数据库操作接口,entity下放置各种model类,mappers下放置各个dao对应的映射文件,service服务层就不说了,放置各种service接口,impl是其具体实现类. 2

【Android】Sqlite数据库增删改查

Android系统内置一个Sqlite数据库,如果app需要使用Sqlite数据库数据库存储数据,Android会为此app生成一个.db文件.这个数据库在data/data/<package_name>/databases里面,其中<package_name>为该安卓app的工程包名,这个目录必须root后才能看到.在Windows,单机的应用程序,存储数据,基本放到一个文件里面,正如游戏的存档,基本就是把当前的游戏状态存到一个用户很难找到的文件里面.每次存档读档就是一个从这个存