• javaee实验,SSM整合开发综合实例


    由于不能使用maven管理,只能导入jar包做实验,最下面有截图展示所用到的jar包,可以自己搜索文档maven导入依赖;

    SSM整合开发综合实例

    实验目的:
    (1)掌握SSM项目整合的原则;
    (2)掌握SSM框架的整合步骤;
    (3)掌握综合开发实例的实现;

    实验要求:
    (1) 完成SSM框架的整合搭建;
    (2) 完成SSM项目的配置;
    (3) 完成相关代码的编写;
    (4) 完成jsp页面的编码;

    实验内容:
    根据给定的数据库,完成一个SSM框架的项目搭建,要求最终实现在一个页面中输入学校名称和学校人数,点击按钮,将数据插入到数据库中,要求在过程中使用SSM 框架完成。

    由于配置和代码中含有路径的原因,先展示一下目录:
    在这里插入图片描述
    1.配置文件代码:
    application.xml:

    
    <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"
    	xmlns:aop="http://www.springframework.org/schema/aop"
    	xmlns:tx="http://www.springframework.org/schema/tx"
    	xsi:schemaLocation="http://www.springframework.org/schema/beans
            http://www.springframework.org/schema/beans/spring-beans.xsd
            http://www.springframework.org/schema/context 
            http://www.springframework.org/schema/context/spring-context.xsd
            http://www.springframework.org/schema/aop 
            http://www.springframework.org/schema/aop/spring-aop.xsd
            http://www.springframework.org/schema/tx 
            http://www.springframework.org/schema/tx/spring-tx.xsd">
            
    	
    	<bean name="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
    		<property name="driverClass" value="com.mysql.jdbc.Driver" />
    		<property name="jdbcUrl" value="jdbc:mysql://localhost:3306/javaeetest7?useSSL=false" />
    		<property name="user" value="root" />
    		<property name="password" value="123456" />
    	bean>
    	 
        <bean id="sessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
            <property name="dataSource" ref="dataSource">property>
        bean>
        
        <bean id="mapperScan" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
            <property name="basePackage" value="com.ldu.dao">property>
        bean>
    	
        <context:component-scan base-package="com.ldu.service">context:component-scan>
    beans>
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34

    springmvc.xml:

    
    <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"
    	xmlns:mvc="http://www.springframework.org/schema/mvc"
    	xsi:schemaLocation="http://www.springframework.org/schema/beans
            http://www.springframework.org/schema/beans/spring-beans.xsd
            http://www.springframework.org/schema/context
            http://www.springframework.org/schema/context/spring-context.xsd
            http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd">
    
    	<context:component-scan base-package="com.ldu"/>
    	<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    		<property name="prefix" value="/WEB-INF/jsp/" />
    		<property name="suffix" value=".jsp" />
    	bean>
    	<mvc:annotation-driven/>
    	<mvc:default-servlet-handler>mvc:default-servlet-handler>
    beans>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    web.xml:

    
    <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" version="3.1">
      <display-name>javaEETest6.0display-name>
      <welcome-file-list>
        <welcome-file>index.jspwelcome-file>
      welcome-file-list>
      
      	<context-param>
            <param-name>contextConfigLocationparam-name>
            <param-value>classpath:application.xmlparam-value>
        context-param>
        <listener>
            <listener-class>org.springframework.web.context.ContextLoaderListenerlistener-class>
        listener>
        
    	<servlet>
     		<servlet-name>springMvcservlet-name>
     		<servlet-class>org.springframework.web.servlet.DispatcherServletservlet-class>
     		<init-param>
     			<param-name>contextConfigLocationparam-name>
     			<param-value>classpath:springmvc.xmlparam-value>
     		init-param>
     		<load-on-startup>1load-on-startup>
     	servlet>
     	
    	<servlet-mapping>
    		<servlet-name>springMvcservlet-name>
    		<url-pattern>/url-pattern>
    	servlet-mapping>
    web-app>
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31

    2.业务逻辑功能代码
    实体类School.java:

    package com.ldu.pojo;
    
    public class School {
    	private Integer id;
    	private String name;
    	private int persons;
    	public Integer getId() {
    		return id;
    	}
    	public void setId(Integer id) {
    		this.id = id;
    	}
    	public String getName() {
    		return name;
    	}
    	public void setName(String name) {
    		this.name = name;
    	}
    	public int getPersons() {
    		return persons;
    	}
    	public void setPersons(int persons) {
    		this.persons = persons;
    	}
    	@Override
    	public String toString() {
    		return "school [id=" + id + ", name=" + name + ", persons=" + persons + "]";
    	}
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29

    Dao层 SchoolDao.java:

    package com.ldu.dao;
    import org.apache.ibatis.annotations.Insert;
    import org.springframework.stereotype.Repository;
    
    @Repository
    public interface SchoolDao {
    	
    	@Insert("insert into t_school(name, persons) values(#{param1},#{param2})")
    	int InsertSchool(String name, Integer persons);
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    Service层 SchoolService.java:

    package com.ldu.service;
    import javax.annotation.Resource;
    import org.springframework.stereotype.Service;
    import com.ldu.dao.SchoolDao;
    
    @Service
    public class SchoolService {
    	
    	@Resource
    	private SchoolDao schoolDao;
    	
    	public int insertSchool(String name, Integer persons) {
    		return schoolDao.InsertSchool(name, persons);
    	}	
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    Controller层 SchoolController.java:

    package com.ldu.controller;
    import javax.annotation.Resource;
    import org.springframework.stereotype.Controller;
    import org.springframework.ui.Model;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestMethod;
    import com.ldu.service.SchoolService;
    import com.ldu.pojo.School;
    
    @Controller
    @RequestMapping("/school")
    public class SchoolController {
    	
    	@Resource
    	private SchoolService schoolService;
    	
    	@RequestMapping(value="/add", method=RequestMethod.POST)
    	public String add(School school,Model model) {
    		if(schoolService.insertSchool(school.getName(), school.getPersons())>0) {
    			model.addAttribute("msg", "添加成功!");
    		}
    		else {
    			model.addAttribute("msg", "添加失败!");
    		}
    		return "msg";
    	}
    
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28

    3.Jsp页面的代码:

    index.jsp:
    
    <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
    <!DOCTYPE HTML">
    <html>
    <head>
      <title>新增学校title>
    head>
      
     <body>
    	<form action="${pageContext.request.contextPath }/school/add" method="post">
    		校名:<input name="name"><br/>
    		人数:<input name="persons"><br/>
    		<input type="submit" value="新增学校">
    	form>
     body>
    html>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    msg.jsp:

    <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
    <!DOCTYPE HTML">
    <html>
    <head>
      <title>反馈信息title>
    head>
      
     <body>
    	<h3>${msg}h3>
     body>
    html>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    jar包
    在这里插入图片描述

    结果图:在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    1. 报错:Error creating bean with name ‘ ’ 原因是未开启注解扫描、未设置注解扫描的包路径。
    2. 要注意检查DAO、Controller、Service层中相应的注解是否加上。

    小知识:
    实体类中用Integer而不是int的原因是:Integer是int包装后的对象,默认值是null,而int默认值是0。如果用int,在未赋值的情况下传入数据库,数据库接收到的是0而不是null;

  • 相关阅读:
    友宝在线在港交所上市申请“失效”:连续两年亏损,王滨为大股东
    【PX4-AutoPilot教程-TIPS】PX4控制无人机在Gazebo中飞行时由于视角跟随无人机在画面中心导致视角乱晃的解决方法
    nginx
    实现网站都变成灰色-filter
    面试官【说一下移动端1px的解决方案】
    关于地方美食的HTML网页设计——地方美食介绍网站 HTML顺德美食介绍 html网页制作代码大全
    【golang学习笔记2.2】 Map、结构体和接口
    Mac 安装 Homebrew
    记录我在cmd里使用pip命令下载Python的包时碰见的两个错误
    SAP云集成 SAP Integration Suite启用过程,踩坑记
  • 原文地址:https://blog.csdn.net/weixin_57780057/article/details/128018251