您好,登錄后才能下訂單哦!
本文小編為大家詳細介紹“怎么用SSM實現管理系統”,內容詳細,步驟清晰,細節處理妥當,希望這篇“怎么用SSM實現管理系統”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
Paper.java
package com.pojo;public class Paper { private long paperId; private String paperName; private int paperNum; private String paperDetail; public long getPaperId() { return paperId; } public void setPaperId(long paperId) { this.paperId = paperId; } public String getPaperName() { return paperName; } public void setPaperName(String paperName) { this.paperName = paperName; } public int getPaperNum() { return paperNum; } public void setPaperNum(int paperNum) { this.paperNum = paperNum; } public String getPaperDetail() { return paperDetail; } public void setPaperDetail(String paperDetail) { this.paperDetail = paperDetail; } }
PaperController.java
package com.controller;import com.pojo.Paper;import com.service.PaperService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.PathVariable;import org.springframework.web.bind.annotation.RequestMapping;import java.util.List;@Controller@RequestMapping("/paper")public class PaperController { @Autowired private PaperService paperService; @RequestMapping("/allPaper") public String list(Model model) { List<Paper> list = paperService.queryAllPaper(); model.addAttribute("list", list); return "allPaper"; } @RequestMapping("toAddPaper") public String toAddPaper() { return "addPaper"; } @RequestMapping("/addPaper") public String addPaper(Paper paper) { paperService.addPaper(paper); return "redirect:/paper/allPaper"; } @RequestMapping("/del/{paperId}") public String deletePaper(@PathVariable("paperId") Long id) { paperService.deletePaperById(id); return "redirect:/paper/allPaper"; } @RequestMapping("toUpdatePaper") public String toUpdatePaper(Model model, Long id) { model.addAttribute("paper", paperService.queryById(id)); return "updatePaper"; } @RequestMapping("/updatePaper") public String updatePaper(Model model, Paper paper) { paperService.updatePaper(paper); paper = paperService.queryById(paper.getPaperId()); model.addAttribute("paper", paper); return "redirect:/paper/allPaper"; } }
PaperDao.java
package com.dao;import com.pojo.Paper;import java.util.List;public interface PaperDao { int addPaper(Paper paper); int deletePaperById(long id); int updatePaper(Paper paper); Paper queryById(long id); List<Paper> queryAllPaper(); }
PaperServer.java
package com.service;import com.pojo.Paper;import java.util.List;public interface PaperService { int addPaper(Paper paper); int deletePaperById(long id); int updatePaper(Paper paper); Paper queryById(long id); List<Paper> queryAllPaper(); }
PaperServiceImpl.java
package com.service.impl;import com.dao.PaperDao;import com.pojo.Paper;import com.service.PaperService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Service;import java.util.List;@Servicepublic class PaperServiceImpl implements PaperService { @Autowired PaperDao paperDao; public int addPaper(Paper paper) { return paperDao.addPaper(paper); } public int deletePaperById(long id) { return paperDao.deletePaperById(id); } public int updatePaper(Paper paper) { return paperDao.updatePaper(paper); } public Paper queryById(long id) { return paperDao.queryById(id); } public List<Paper> queryAllPaper() { return paperDao.queryAllPaper(); } }
PaperMapper.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.dao.PaperDao"> <resultMap type="Paper" id="paperResultMap" > <id property="paperId" column="paper_id"/> <result property="paperName" column="name"/> <result property="paperNum" column="number"/> <result property="paperDetail" column="detail"/> </resultMap> <insert id="addPaper" parameterType="Paper"> INSERT INTO paper(paper_id,name,number,detail) VALUE (#{paperId},#{paperName}, #{paperNum}, #{paperDetail}) </insert> <delete id="deletePaperById" parameterType="long"> DELETE FROM paper WHERE paper_id=#{paperID} </delete> <update id="updatePaper" parameterType="Paper"> UPDATE paper SET NAME = #{paperName},NUMBER = #{paperNum},detail = #{paperDetail} WHERE paper_id = #{paperId} </update> <select id="queryById" resultType="Paper" parameterType="long"> SELECT paper_id,name,number,detail FROM paper WHERE paper_id=#{paperId} </select> <select id="queryAllPaper" resultMap="paperResultMap"> SELECT paper_id,name,number,detail FROM paper </select></mapper>
spring-dao.xml
<?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 http://www.springframework.org/schema/context/spring-context.xsd"> <!-- 配置整合mybatis過程 --> <!-- 1.配置數據庫相關參數properties的屬性:${url} --> <context:property-placeholder location="classpath:jdbc.properties"/> <!-- 2.數據庫連接池 --> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <!-- 配置連接池屬性 --> <property name="driverClass" value="${jdbc.driver}"/> <property name="jdbcUrl" value="${jdbc.url}"/> <property name="user" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/> <!-- c3p0連接池的私有屬性 --> <property name="maxPoolSize" value="30"/> <property name="minPoolSize" value="10"/> <!-- 關閉連接后不自動commit --> <property name="autoCommitOnClose" value="false"/> <!-- 獲取連接超時時間 --> <property name="checkoutTimeout" value="10000"/> <!-- 當獲取連接失敗重試次數 --> <property name="acquireRetryAttempts" value="2"/> </bean> <!-- 3.配置SqlSessionFactory對象 --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <!-- 注入數據庫連接池 --> <property name="dataSource" ref="dataSource"/> <!-- 配置MyBaties全局配置文件:mybatis-config.xml --> <property name="configLocation" value="classpath:mybatis-config.xml"/> <!-- 掃描pojo包 使用別名 --> <property name="typeAliasesPackage" value="com.pojo"/> <!-- 掃描sql配置文件:mapper需要的xml文件 --> <property name="mapperLocations" value="classpath:mapper/*.xml"/> </bean> <!-- 4.配置掃描Dao接口包,動態實現Dao接口,注入到spring容器中 --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <!-- 注入sqlSessionFactory --> <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/> <!-- 給出需要掃描Dao接口包 --> <property name="basePackage" value="com.dao"/> </bean></beans>
spring-mvc.xml
<?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 http://www.springframework.org/schema/context/spring-context.xsd"> <!-- 配置整合mybatis過程 --> <!-- 1.配置數據庫相關參數properties的屬性:${url} --> <context:property-placeholder location="classpath:jdbc.properties"/> <!-- 2.數據庫連接池 --> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <!-- 配置連接池屬性 --> <property name="driverClass" value="${jdbc.driver}"/> <property name="jdbcUrl" value="${jdbc.url}"/> <property name="user" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/> <!-- c3p0連接池的私有屬性 --> <property name="maxPoolSize" value="30"/> <property name="minPoolSize" value="10"/> <!-- 關閉連接后不自動commit --> <property name="autoCommitOnClose" value="false"/> <!-- 獲取連接超時時間 --> <property name="checkoutTimeout" value="10000"/> <!-- 當獲取連接失敗重試次數 --> <property name="acquireRetryAttempts" value="2"/> </bean> <!-- 3.配置SqlSessionFactory對象 --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <!-- 注入數據庫連接池 --> <property name="dataSource" ref="dataSource"/> <!-- 配置MyBaties全局配置文件:mybatis-config.xml --> <property name="configLocation" value="classpath:mybatis-config.xml"/> <!-- 掃描pojo包 使用別名 --> <property name="typeAliasesPackage" value="com.pojo"/> <!-- 掃描sql配置文件:mapper需要的xml文件 --> <property name="mapperLocations" value="classpath:mapper/*.xml"/> </bean> <!-- 4.配置掃描Dao接口包,動態實現Dao接口,注入到spring容器中 --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <!-- 注入sqlSessionFactory --> <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/> <!-- 給出需要掃描Dao接口包 --> <property name="basePackage" value="com.dao"/> </bean></beans>
spring-service.xml
<?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" 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/tx http://www.springframework.org/schema/tx/spring-tx.xsd"> <!-- 掃描service包下所有使用注解的類型 --> <context:component-scan base-package="com.service" /> <!-- 配置事務管理器 --> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <!-- 注入數據庫連接池 --> <property name="dataSource" ref="dataSource" /> </bean> <!-- 配置基于注解的聲明式事務 --> <tx:annotation-driven transaction-manager="transactionManager" /></beans>
jdbc.properties
jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://127.0.0.1:3306/db_ssm?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8 jdbc.username=root jdbc.password=123456
log4j.properties
log4j.rootLogger=ERROR, stdoutlog4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
mybatis-config.xml
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration> <!-- 配置全局屬性 --> <settings> <!-- 使用jdbc的getGeneratedKeys獲取數據庫自增主鍵值 --> <setting name="useGeneratedKeys" value="true" /> <!-- 使用列別名替換列名 默認:true --> <setting name="useColumnLabel" value="true" /> <!-- 開啟駝峰命名轉換:Table{create_time} -> Entity{createTime} --> <setting name="mapUnderscoreToCamelCase" value="true" /> </settings></configuration>
index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %><% pageContext.setAttribute("path", request.getContextPath()); %><!DOCTYPE HTML><html><head> <title>首頁</title> <style type="text/css"> a { text-decoration: none; color: black; font-size: 18px; } h3 { width: 180px; height: 38px; margin: 100px auto; text-align: center; line-height: 38px; background: deepskyblue; border-radius: 4px; } </style></head><body><div class="container"> <div class="row clearfix"> <div class="col-md-12 column"> <div class="page-header"> <h1> 基于SSM框架的管理系統:簡單實現增、刪、改、查。 </h1> </div> </div> </div></div><br><br><h3> <a href="${path }/paper/allPaper">點擊進入管理頁面</a></h3></body></html>
web.xml
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" ><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_3_1.xsd" version="3.1" metadata-complete="true"> <display-name>Archetype Created Web Application</display-name> <servlet> <servlet-name>dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!-- 配置springMVC需要加載的配置文件 spring-dao.xml,spring-service.xml,spring-mvc.xml Mybatis - > spring -> springmvc --> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring/spring-*.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>dispatcher</servlet-name> <!-- 默認匹配所有的請求 --> <url-pattern>/</url-pattern> </servlet-mapping> <filter> <filter-name>encodingFilter</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>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping></web-app>
log4j.xml
<?xml version="1.0" encoding="UTF-8" ?><!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --><!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"><log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> <!-- - This is a sample configuration for log4j. - It simply just logs everything into a single log file. - Note, that you can use properties for value substitution. --> <appender name="CORE" class="org.apache.log4j.FileAppender"> <param name="File" value="${org.apache.cocoon.work.directory}/cocoon-logs/log4j.log" /> <param name="Append" value="false" /> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%d %-5p %t %c - %m%n"/> </layout> </appender> <root> <priority value="${org.apache.cocoon.log4j.loglevel}"/> <appender-ref ref="CORE"/> </root></log4j:configuration>
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?><!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --><!-- @version $Id: applicationContext.xml 561608 2007-08-01 00:33:12Z vgritsenko $ --><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util" xmlns:configurator="http://cocoon.apache.org/schema/configurator" xmlns:avalon="http://cocoon.apache.org/schema/avalon" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.0.xsd http://cocoon.apache.org/schema/configurator http://cocoon.apache.org/schema/configurator/cocoon-configurator-1.0.1.xsd http://cocoon.apache.org/schema/avalon http://cocoon.apache.org/schema/avalon/cocoon-avalon-1.0.xsd"> <!-- Activate Cocoon Spring Configurator --> <configurator:settings/> <!-- Configure Log4j --> <bean name="org.apache.cocoon.spring.configurator.log4j" class="org.apache.cocoon.spring.configurator.log4j.Log4JConfigurator" scope="singleton"> <property name="settings" ref="org.apache.cocoon.configuration.Settings"/> <property name="resource" value="/WEB-INF/log4j.xml"/> </bean> <!-- Activate Avalon Bridge --> <avalon:bridge/></beans>
讀到這里,這篇“怎么用SSM實現管理系統”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。