SpringMVC第七阶段:SpringMVC的增删改查(01)

这篇具有很好参考价值的文章主要介绍了SpringMVC第七阶段:SpringMVC的增删改查(01)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

SpringMVC的增删改查

1、准备单表的数据库

drop database if exists springmvc;

create database springmvc;

use springmvc; 

##创建图书表
create table t_book(
	`id` int(11) primary key auto_increment, 	## 主键
	`name` varchar(50) not null,				## 书名 
	`author` varchar(50) not null,				## 作者
	`price` decimal(11,2) not null,				## 价格
	`sales` int(11) not null,					## 销量
	`stock` int(11) not null					## 库存
);


## 插入初始化测试数据
insert into t_book(`id` , `name` , `author` , `price` , `sales` , `stock`) 
values(null , '怎样拐跑别人的媳妇' , '龙伍' , 68, 99999 , 52);

insert into t_book(`id` , `name` , `author` , `price` , `sales` , `stock`) 
values(null , '木虚肉盖饭' , '小胖' , 16, 1000 , 50);

insert into t_book(`id` , `name` , `author` , `price` , `sales` , `stock`) 
values(null , 'C++编程思想' , '刚哥' , 45.5 , 14 , 95);

insert into t_book(`id` , `name` , `author` , `price` , `sales` , `stock`) 
values(null , '蛋炒饭' , '周星星' , 9.9, 12 , 53);
 
insert into t_book(`id` , `name` , `author` , `price` , `sales` , `stock`) 
values(null , '赌神' , '龙伍' , 66.5, 125 , 535);

insert into t_book(`id` , `name` , `author` , `price` , `sales` , `stock`) 
values(null , '西游记' , '罗贯中' , 12, 19 , 9999);

insert into t_book(`id` , `name` , `author` , `price` , `sales` , `stock`) 
values(null , '水浒传' , '华仔' , 33.05 , 22 , 88);
 
insert into t_book(`id` , `name` , `author` , `price` , `sales` , `stock`) 
values(null , '操作系统原理' , '刘优' , 133.05 , 122 , 188);
 
insert into t_book(`id` , `name` , `author` , `price` , `sales` , `stock`) 
values(null , '数据结构 java版' , '封大神' , 173.15 , 21 , 81);

## 查看表内容
select id,name,author,price,sales,stock from t_book;

2、SpringMVC的增,删,改,查

SpringMVC第七阶段:SpringMVC的增删改查(01)

需要导入的jar包有:

druid-1.1.9.jar
junit_4.12.jar
mysql-connector-java-5.1.37-bin.jar
org.hamcrest.core_1.3.0.jar
spring-aop-5.2.5.RELEASE.jar
spring-beans-5.2.5.RELEASE.jar
spring-context-5.2.5.RELEASE.jar
spring-core-5.2.5.RELEASE.jar
spring-expression-5.2.5.RELEASE.jar
spring-jcl-5.2.5.RELEASE.jar
spring-jdbc-5.2.5.RELEASE.jar
spring-orm-5.2.5.RELEASE.jar
spring-test-5.2.5.RELEASE.jar
spring-tx-5.2.5.RELEASE.jar
spring-web-5.2.5.RELEASE.jar
spring-webmvc-5.2.5.RELEASE.jar

在src目录下记得配置 jdbc.properties属性配置文件:

SpringMVC第七阶段:SpringMVC的增删改查(01)

SpringMVC的配置文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd">

    <context:component-scan base-package="com"></context:component-scan>

    <!--
        配置视图解析器
    -->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/book/" />
        <property name="suffix" value=".jsp" />
    </bean>

    <!-- 加载jdbc.properties属性配置文件 -->
    <context:property-placeholder location="classpath:jdbc.properties" />

    <!-- 配置数据库连接池 -->
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
        <property name="username" value="${user}" />
        <property name="password" value="${password}" />
        <property name="url" value="${url}" />
        <property name="driverClassName" value="${driverClassName}" />
        <property name="initialSize" value="${initialSize}" />
        <property name="maxActive" value="${maxActive}" />
    </bean>

    <!-- 配置用于执行sql语句的jdbcTemplate工具类 -->
    <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
        <property name="dataSource" ref="dataSource" />
    </bean>
    
</beans>

web.xml中的配置内容如下:

<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <!-- 配置前端控制器 -->
    <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:springmvc.xml</param-value>
        </init-param>
        
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

</web-app>

3、创建实体bean对象

public class Book {
    private Integer id;
    private String name;
    private String author;
    private BigDecimal price;
    private Integer sales;
    private Integer stock;
}

4、创建BookDao以及测试

@Repository
public class BookDao {

    @Autowired
    JdbcTemplate jdbcTemplate;

    public int saveBook(Book book) {
        String sql = "insert into t_book( `name`,`author`,`price`,`sales`,`stock`) values(?,?,?,?,?)";
        return jdbcTemplate.update(sql, book.getName(), book.getAuthor(), book.getPrice(), book.getSales(), book.getStock());
    }

    public int deleteBookById(Integer id) {
        String sql = "delete from t_book where id = ?";
        return jdbcTemplate.update(sql, id);
    }

    public int updateBook(Book book) {
        String sql = "update t_book set `name`=?,`author`=?,`price`=?,`sales`=?,`stock`=? where id = ?";
        return jdbcTemplate.update(sql, book.getName(), book.getAuthor(),
                book.getPrice(), book.getSales(), book.getStock(), book.getId());
    }

    public Book queryBookById(Integer id){
        String sql = "select `name`,`author`,`price`,`sales`,`stock`,`id` from t_book where id = ?";
        return jdbcTemplate.queryForObject(sql,new BeanPropertyRowMapper<Book>(Book.class), id );
    }

    public List<Book> queryBooks(){
        String sql = "select `name`,`author`,`price`,`sales`,`stock`,`id` from t_book";
        return jdbcTemplate.query(sql,new BeanPropertyRowMapper<Book>(Book.class));
    }

}

5、创建BookService以及测试

@Service
public class BookService {

    @Autowired
    BookDao bookDao;

    public void saveBook(Book book){
        bookDao.saveBook(book);
    }

    public void deleteBookById(Integer id){
        bookDao.deleteBookById(id);
    }

    public void updateBook(Book book){
        bookDao.updateBook(book);
    }

    public Book queryBookById(Integer id){
        return bookDao.queryBookById(id);
    }

    public List<Book> queryBooks(){
        return bookDao.queryBooks();
    }

}

6、拷贝CRUD页面到WebContent目录下

从SpringMVC第二个的目录里,笔记目录中的CRUD目录
SpringMVC第七阶段:SpringMVC的增删改查(01)文章来源地址https://www.toymoban.com/news/detail-463577.html

7、配置springMVC的视图解析器到springmvc.xml配置文件中

<!--
    配置视图解析器
-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/book/" />
    <property name="suffix" value=".jsp" />
</bean>

到了这里,关于SpringMVC第七阶段:SpringMVC的增删改查(01)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • HBase的增删改查

    目录 学习HBase 一、HBase的定义 二、HBase 逻辑结构 三、HBase 物理存储结构 四、 数据模型 五、HBase Shell操作 1.基本操作命令 3.【Table】表的操作命令 4.其他命令 一种分布式、可扩展、支持海量数据存储的Nosql数据库。 1. NameSpace 命名空间,类似于关系型数据库的 DatabBase 概念,每

    2024年01月21日
    浏览(35)
  • springboot的增删改查

    一、how2j网站上Category表练习 教程:SpringBoot系列教材 (十七)- CRUD+分页 - Springboot使用Mybatis实现完整的 增删改查 CRUD和分页 (how2j.cn)。之前的练习只实现了查找功能,本次练习在上次练习的基础上增加了增删查找功能以及分页功能。 二、增加CURD方法主要是在CategoryMapper和Ca

    2024年02月14日
    浏览(39)
  • 表的增删改查

    1、创建表 mysql create table employee (     - id int(1) comment \\\'员工编号\\\',     - name varchar(6) comment \\\'员工名字\\\',     - gender varchar(2) comment \\\'员工性别\\\',     - salary int (4) comment \\\'员工薪资\\\'); Query OK, 0 rows affected (0.01 sec) 2、插入数据 insert employee values(1,\\\'张三\\\',\\\'男\\\',2000); insert into employee values

    2024年02月13日
    浏览(47)
  • Odoo的增删改查

    create函数:(增) unlink函数:(删) write函数:(改) read,search,和search_read函数(查) 1)read函数 2)search函数 一般不重写search 第一个列表为domain,limit为输出一条数据 3)search_read函数 create函数:(增) create(vals_list) 如: test .create({\\\'name\\\': \\\"New Name\\\"}) 即:在test 对象中,创

    2024年02月03日
    浏览(33)
  • pytorch网络的增删改

    本文介绍对加载的网络的层进行 增删改 , 以alexnet网络为例进行介绍。 在做迁移学习的时候,我们通常是在分类网络的基础上进行修改的。一般会把网络最后的几层删除掉,主要是全局平均池化层、全连接层。只留前面的网络部分作为特征提取器,再次基础上进行其他的任务

    2024年02月04日
    浏览(48)
  • MySQL--数据的增删改

    目录  1.添加数据 1.1、添加全部字段的数据 1.2、添加指定字段的部分数据 1.3、同时添加多条记录 1.4、插入查询结果数据  2.修改数据  2.1、更新全部数据 2.2、更新部分数据 3.删除部分数据 3.1、删除部分数据  3.2、删除全部数据 向数据表中的所有字段同时添加数据, 使用

    2024年04月26日
    浏览(29)
  • 【MySQL】表的增删改查

    表的增删查改简称CRUD:Create(新增),Retrieve(查找),Update(修改),Delete(删除)。 CRUD的操作对象是对表当中的数据,是典型的DML语句(Data Manipulation Language 数据操作语言)。 语法: 说明: SQL中大写的表示,[ ]中代表的是可选项。 SQL中的每个 value_list 都表示插

    2024年02月02日
    浏览(45)
  • 表的增删改查 进阶(二)

    🎥 个人主页:Dikz12 🔥个人专栏:MySql 📕格言:那些在暗处执拗生长的花,终有一日会馥郁传香 欢迎大家👍点赞✍评论⭐收藏 目录 3.新增  4.查询 聚合查询  聚合函数  GROUP BY子句  HAVING  联合查询  内连接(重点) 外连接(重点)  左外连接 右外连接  自连接 子连接  合并

    2024年01月20日
    浏览(49)
  • MySQL中的增删改方法

    目录 1.插入数据/添加数据 2.更新数据/修改数据 3.删除数据 4.小结: 方式一:一条一条添加 1.不指明添加的字段:insert into 表名 values (字段值)         注意:一定要按照声明的字段先后顺序添加 2.指明添加的字段(推荐):insert into 表名(字段名) values (字段值) 3.同时添加多

    2024年02月15日
    浏览(35)
  • ES-索引的增删改查

    目的:存储学生的分数信息,且支持 搜索 “姓名、课程名、分数” 1.1.1 自动创建索引 put 数据时,es会自动创建索引(不推荐) 1.1.2 手动创建索引 user_course 为索引名 courses 使用 nested , 支持 course=“数学” grade=98的查询 nested的作用,参考后续章节 1.4.1 创建新索引 1.4.2 迁移

    2024年02月11日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包