Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Spring、MyBatis与Spring框架的整合

Spring、MyBatis与Spring框架的整合

作者头像
天道Vax的时间宝藏
发布于 2021-08-11 02:53:11
发布于 2021-08-11 02:53:11
27400
代码可运行
举报
运行总次数:0
代码可运行

实验目的:

  1. 掌握Spring、MyBatis以及SpringMVC框架的使用。
  2. 掌握SSM框架的整合步骤,环境搭建,整合思路。
  3. 掌握SSM框架整合时的配置文件内容。
  4. 掌握SSM框架整合应用程序的编写。

实验内容及步骤:

1)在src目录下,创建com.itheima.po包,并在包中创建持久化类Customer:

2)在src目录下,创建一个com.itheima.dao包,并在包中创建接口文件CustomerDao以及对应的映射文件CustomerDao.xml

3)在src目录下,创建com.itheima.service包,然后在包中创建接口文件CustomerService,并在CustomerService中定义通过id查询客户的方法

4)在src目录下,创建一个com.itheima.service.impl包,并在包中创建CustomerService接口的实现类CustomerServiceImpl

5)在src目录下,创建一个com.itheima.controller包,并在包中创建用于处理页面请求的控制类CustomerController:

6)在WEB-INF目录下,创建一个jsp文件夹,在该文件夹下创建一个用于展示客户详情的页面文件customer.jsp:

7)将项目发布到Tomcat服务器并启动,在浏览器中访问地址http://localhost:8080/chapter17/findCustomerById?id=1,显示效果如下所示:

实验代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//Customer.java
package com.xzk.po;

public class Customer {
	private Integer id;
	private String username;
	private String jobs;
	private String phone;
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public String getUsername() {
		return username;
	}
	public void setUsername(String username) {
		this.username = username;
	}
	public String getJobs() {
		return jobs;
	}
	public void setJobs(String jobs) {
		this.jobs = jobs;
	}
	public String getPhone() {
		return phone;
	}
	public void setPhone(String phone) {
		this.phone = phone;
	}
	
}

//CustomerDao.java
package com.xzk.dao;

import com.xzk.po.Customer;

public interface CustomerDao {
	public Customer findCustomerById(Integer id) ;
}

//CustomerDao.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.xzk.dao.CustomerDao">
	<!--根据id查询客户信息 -->
	<select id="findCustomerById" parameterType="Integer"
		                               resultType="Customer">
		select * from t_customer where id = #{id}
	</select>
</mapper>

//CustomerConrroller.java
package com.xzk.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

import com.xzk.po.Customer;
import com.xzk.service.CustomerService;

@Controller
public class CustomerController {
	@Autowired
	private CustomerService customerService;
	/**
	 * 根据id查询客户详情
	 */
	@RequestMapping("/findCustomerById")
	public String findCustomerById(Integer id,Model model) {
		Customer customer = customerService.findCustomerById(id);
		model.addAttribute("customer", customer);
		//返回客户信息展示页面
		return "customer";
	}
}

//CustomerService.java
package com.xzk.service;

import com.xzk.po.Customer;

public interface CustomerService {
	public Customer findCustomerById(Integer id);
}

//CustomerServiceImpl.java
package com.xzk.service;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.xzk.dao.CustomerDao;
import com.xzk.po.Customer;

@Service
@Transactional
public class CustomerServiceImpl {
	//注解注入CustomerDao
		@Autowired
		private CustomerDao customerDao;
		//查询客户
		public Customer findCustomerById(Integer id) {
			return this.customerDao.findCustomerById(id);
		}
}

//Web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  	xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
  	xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee 
  	http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" 
  	id="WebApp_ID" version="3.1">
  	<!-- 配置加载Spring文件的监听器-->
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>classpath:applicationContext.xml</param-value>
	</context-param>
	<listener>
		<listener-class>     org.springframework.web.context.ContextLoaderListener
		</listener-class>
	</listener>
	<!-- 编码过滤器 -->
	<filter>
		<filter-name>encoding</filter-name>
		<filter-class>		     org.springframework.web.filter.CharacterEncodingFilter
		</filter-class>
		<init-param>
			<param-name>encoding</param-name>
			<param-value>UTF-8</param-value>
		</init-param>
	</filter>
	<filter-mapping>
		<filter-name>encoding</filter-name>
		<url-pattern>*.action</url-pattern>
	</filter-mapping>
	<!-- 配置Spring MVC前端核心控制器 -->
	<servlet>
		<servlet-name>springmvc</servlet-name>
		<servlet-class>
		     org.springframework.web.servlet.DispatcherServlet
		</servlet-class>
		<init-param>
			<param-name>contextConfigLocation</param-name>
			<param-value>classpath:springmvc-config.xml</param-value>
		</init-param>
		<!-- 配置服务器启动后立即加载Spring MVC配置文件 -->
    	<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>springmvc</servlet-name>
		<!--/:拦截所有请求(除了jsp)-->
		<url-pattern>/</url-pattern>
	</servlet-mapping>
</web-app>

//customer.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>客户信息界面</title>
</head>
<body>
	<table border=1>
		<tr>
			<td>编号</td>
			<td>名称</td>
			<td>职业</td>
			<td>电话</td>
		</tr>
		<tr>
			<td>${customer.id}</td>
			<td>${customer.username}</td>
			<td>${customer.jobs}</td>
			<td>${customer.phone}</td>
		</tr>
	</table>
</body>
</html>
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/06/04 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
基于SpringMVC注解的学生信息批量修改
4. 创建com.itheima.po.Student.java。包含属性id,stname,score
天道Vax的时间宝藏
2021/08/11
4430
基于SpringMVC注解的学生信息的查询
实验内容: 创建com.itheima.po.Student类,包含两个属性,stuName(String),password(String) 创建StudentController,并存储Student对象student,设置stuName=”小雪”,password=”123” 采用注解的形式 实验步骤: 首先创建com.itheima.po.Student类,包含两个属性,stuName(String),password(String),并且自动生成相关的Setter/Getter方法和toStrin
天道Vax的时间宝藏
2021/08/11
3140
SSM框架整合之练习篇
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
海仔
2019/10/22
4270
SSH整合
Spring的配置文件是applicationContext.xml和web.xml
用户3112896
2019/09/26
1.4K0
SSH整合
撒花 | SSM 完结
同样,整合之后,如果我们可以通过前台页面来执行查询方法,并且查询出的数据能够在页面中正确显示,那么我们也可以认为三大框架整合成功。
千羽
2021/12/29
2240
撒花 | SSM 完结
SSH框架之Spring+Struts2+Hibernate整合篇
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
海仔
2019/09/23
6200
Spring整合mybatis 1 查询
用户9184480
2024/12/17
730
Spring整合mybatis 1 查询
Spring、SpringMVC、MyBatis整合
项目的目:做一个登陆页面inddex.jsp,然后在数据库中查询用户名和密码,如果匹配成功,跳转到success.jsp,不成功跳转到error.jsp
CBeann
2023/12/25
1530
Spring、SpringMVC、MyBatis整合
CRM第一篇
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
海仔
2019/10/22
3730
Spring第四天:SSH的整合、HibernateTemplate的使用、OpenSessionInViewFilter的使用
*****注意:Struts2和Hibernate都引入了一个相同的jar包(javassist包)。删除一个******
AlbertYang
2020/09/08
6840
Spring第四天:SSH的整合、HibernateTemplate的使用、OpenSessionInViewFilter的使用
Idea SpringMVC+Spring+MyBatis+Maven整合
http://blog.csdn.net/u011403655/article/details/46843331
bear_fish
2018/09/19
2.9K0
Idea SpringMVC+Spring+MyBatis+Maven整合
spring4.0 整合 Quartz 实现任务调度(一)
前言   项目需求:     二维码推送到一体机上,给学生签到扫描用。然后需要的是 上课前20分钟 ,幸好在帮带我的学长做 p2p 的时候,接触过。自然 quartz 是首选。所以我就配置了下,搞了个小样例给大家。 正文    spring4.0 整合 Quartz 实现任务调度。这是期末项目的最后一篇,剩下到暑假吧。 Quartz 介绍     Quartz is a full-featured, open source job scheduling service that can be integr
Java学习123
2018/05/16
5000
JavaEE之MVC框架组合(SpringMVC+Spring4.0+Mybatis3.2)搭建过程详解
很久之前就想写的教程,因为忙着找实习的原因,没有整理出来,首先SSM框架组合(SpringMVC+Spring+Mybatis)和SSH(Spring4.0+Struts2+Hibernate4.0)组合是外面企业里很常用的两种MVC架构,本博客介绍SSM框架组合,这种MVC架构的搭建过程
SmileNicky
2019/01/17
7870
SSM框架整合:SpringMVC + Spring + MyBatis+Maven
创建一个登陆页面,输入username和password,如果和数据库对应,则跳转的success.jsp,否则跳转到error.jsp
CBeann
2023/12/25
2350
SSM框架整合:SpringMVC + Spring + MyBatis+Maven
Mybatis+SSM整合
如果当前包类与子包类重名,会有异常 可以在类上使用注解@Alias(“别名”)
JokerDJ
2023/11/27
1820
Mybatis+SSM整合
day53_BOS项目_05
定区可以将取派员、分区、客户信息关联到一起。 页面:WEB-INF/pages/base/decidedzone.jsp
黑泽君
2018/10/11
1.2K0
day53_BOS项目_05
Spring和Spring Mvc整合详解
SpringMvc 5,可以参考这一篇《Spring和Spring Mvc 5整合详解》
品茗IT
2019/09/12
4840
【SSM】Spring + SpringMVC +MyBatis 框架整合
配置目录: 1.spring的编码过滤器; 2.处理请求方式的过滤器; 3.SpringMVC的前端控制器DispatcherServlet; 4.自定义springmvc配置文件的名称与位置; 5.将DispatcherServlet的初始化时间提前到服务器启动前; 6.spring监听器,在服务器启动时加载spring的配置文件; 7.自定义spring配置文件的名称与位置;
.29.
2023/10/17
3480
【SSM】Spring + SpringMVC +MyBatis 框架整合
分布式服务框架之Dubbo整合Spring项目(三)
        代码粘贴完毕,注意一下dubbo依赖的是spring2.5,需要在pom里处理一下,不然使用别的版本的spring的时候,项目会报错。
尚浩宇
2018/08/17
7140
Spring4+Spring MVC+MyBatis整合思路
1、Spring框架的搭建 这个很简单,只需要web容器中注册org.springframework.web.context.ContextLoaderListener,并指定spring加载配置文件,那么spring容器搭建完成。(当然org.springframework的核心jar包需要引入) 当然为了更加易用支持J2EE应用,一般我们还会加上如下: Spring监听HTTP请求事件:org.springframework.web.context.request.RequestContextListe
斯武丶风晴
2018/03/01
9050
Spring4+Spring MVC+MyBatis整合思路
相关推荐
基于SpringMVC注解的学生信息批量修改
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验