【Saas-export项目】--项目整合(spring整合MVC)
转:
【Saas-export项目】--项目整合(spring整合MVC)
文章目录
- Spring整合SpringMVC(export_web_manager子工程)
- (1)log4j.properties
- (2)web.xml
- (3)springmvc.xml
- (4)CompanyController测试
- (5)company-list.jsp页面数据显示
- (6)访问地址
Spring整合SpringMVC(export_web_manager子工程)

(1)log4j.properties
不在别的子工程中添加呢?当前 web层的数据的接收与返回,非常重要
# 将debug等级(可修改)的日志信息输出到CONSOLE和LOGFILE这两个目的地(多个按,逗号隔开)
# CONSOLE和LOGFILE定义在下面的代码,【可以任意起名,可以有多个,不一定只是两个】
# 等级:OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL
# 比如(配置OFF全部都不显示,配置为INFO这样只显示INFO、WARN、ERROR的log信息,而DEBUG信息不会被显示)
log4j.rootLogger=debug, stdout, logfile
#log4j.category.org.apache=INFO
log4j.category.org.springframework=info
# log4j.appender.CONSOLE --> 定义名为CONSOLE的输出端是哪种类型,有五个值
# org.apache.log4j.ConsoleAppender(控制台)
# org.apache.log4j.FileAppender(文件)
# org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
# org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
# org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)
# 这里CONSOLE输出端是控制台
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
# log4j.appender.CONSOLE.layout --> 定义名为CONSOLE的输出端的layout布局方式是哪种类型,有四个值
# org.apache.log4j.PatternLayout(可以灵活地指定布局模式)【***】
# org.apache.log4j.HTMLLayout(以HTML表格形式布局)
#org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串)
#org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)
# 这里设置为PatternLayout,可以灵活指定布局的模式
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
# log4j.appender.CONSOLE.layout.ConversionPattern
# 使用PatternLayout布局需要指定打印信息的具体格式ConversionPattern,参数:
# %d 输出日志时间,默认格式为ISO8601,也可以在其后指定格式,如:%d{yyyy-MM-dd HH:mm:ss,SSS},输出类似:2020-10-16 17:02:28,968
# %r 输出自应用启动到输出该log信息耗费的毫秒数
# %t 输出产生该日志事件的线程名(比如main、gc)
# %p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL等方式
# %c 输出所属的类目,通常就是所在类的全名;
# %m 输出代码中指定的消息
# %M 输出打印该条日志的方法名
# %n 输出一个回车换行符,Windows平台为"rn”,Unix平台为"n”;
# %l 输出日志事件的发生位置,及在代码中的行数;
# [QC]是log信息的开头,可以为任意字符,一般为项目简称。
log4j.appender.CONSOLE.layout.ConversionPattern=%d %p [%c] - %m%n
# LOGFILE配置 (名称可以自定义) 这里配置日志文件存储(存储到指定路径)
# log4j.appender.LOGFILE 用于定义名为LOGFILE的输出端的类型为每天产生一个日志文件。
log4j.appender.logfile=org.apache.log4j.RollingFileAppender
# log4j.appender.LOGFILE.File 定义名为LOGFILE的输出端的文件名为C:logmyweb.log(可以自行修改)
log4j.appender.logfile.File=c:\log\myweb.log
log4j.appender.logfile.MaxFileSize=1KB
log4j.appender.logfile.MaxBackupIndex=5
# log4j.appender.LOGFILE.layout 输出日志布局设置PatternLayout,和上面的一样
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
# log4j.appender.LOGFILE.layout.ConversionPattern 自定义格式输出,和上面一样
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n
(2)web.xml
配置字符编码过滤器,配置监听器,配置前端控制器进行请求分发
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
<context-param>
<param-name>contextConfigLocationparam-name>
<param-value>classpath*:spring/applicationContext-*.xmlparam-value>
context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListenerlistener-class>
listener>
<filter>
<filter-name>characterEncodingFilterfilter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilterfilter-class>
<init-param>
<param-name>encodingparam-name>
<param-value>utf-8param-value>
init-param>
filter>
<filter-mapping>
<filter-name>characterEncodingFilterfilter-name>
<url-pattern>/*url-pattern>
filter-mapping>
<servlet>
<servlet-name>dispatcherServletservlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServletservlet-class>
<init-param>
<param-name>contextConfigLocationparam-name>
<param-value>classpath:spring/springmvc.xmlparam-value>
init-param>
<load-on-startup>1load-on-startup>
servlet>
<servlet-mapping>
<servlet-name>dispatcherServletservlet-name>
<url-pattern>*.dourl-pattern>
servlet-mapping>
web-app>
(3)springmvc.xml
开启注解驱动,配置过滤文件,配置视图解析器,扫描controller
<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.smp.web"/>
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/pages/"/>
<property name="suffix" value=".jsp"/>
bean>
<mvc:annotation-driven conversion-service="conversionServiceFactory"/>
beans>
(4)CompanyController测试
srcmainjavacomsmpwebcontrollercompany
@Controller
@RequestMapping("/company")
public class CompanyController {
private static final Logger l= LoggerFactory.getLogger(CompanyController.class);
@Autowired
ICompanyService iCompanyService;
//list.action->list
//访问company/list.do
@RequestMapping(path = "/list.do",method = RequestMethod.GET)
public String list(Model model){
List<Company> list=iCompanyService.findAll();
l.info("list list="+list);
model.addAttribute("list",list);
return "company/company-list";
}
}
(5)company-list.jsp页面数据显示
srcmainwebappWEB-INFpagescompany
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<%--${list}--%>
<a href="#">新增</a>
<table border="1px" width="100%">
<tr>
<td>id</td>
<td>公司名称</td>
<td>到期时间</td>
<td>公司地址</td>
<td>营业执照</td>
<td>法人代表</td>
<td>公司电话</td>
<td>公司规模</td>
<td>所属行业</td>
<td>备注</td>
<td>状态</td>
<td>当前余额</td>
<td>管理</td>
</tr>
<c:forEach items="${list}" var="company">
<tr>
<td>${company.id}</td>
<td>${company.name}</td>
<td>${company.expirationDate}</td>
<td>${company.address}</td>
<td>${company.licenseId}</td>
<td>${company.representative}</td>
<td>${company.phone}</td>
<td>${company.companySize}</td>
<td>${company.industry}</td>
<td>${company.remarks}</td>
<td>${company.state}</td>
<td>${company.balance}</td>
<td><a href="#">删除</a>
<a>|</a>
<a href="#">修改</a>
</td>
</tr>
</c:forEach>
</table>
</body>
</html>
(6)访问地址
打开Tomcat,访问:http://localhost:8080/export_web_manager_war_exploded/company/list.do

文章目录
- Spring整合SpringMVC(export_web_manager子工程)
- (1)log4j.properties
- (2)web.xml
- (3)springmvc.xml
- (4)CompanyController测试
- (5)company-list.jsp页面数据显示
- (6)访问地址
Spring整合SpringMVC(export_web_manager子工程)
(1)log4j.properties
不在别的子工程中添加呢?当前 web层的数据的接收与返回,非常重要
# 将debug等级(可修改)的日志信息输出到CONSOLE和LOGFILE这两个目的地(多个按,逗号隔开)
# CONSOLE和LOGFILE定义在下面的代码,【可以任意起名,可以有多个,不一定只是两个】
# 等级:OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL
# 比如(配置OFF全部都不显示,配置为INFO这样只显示INFO、WARN、ERROR的log信息,而DEBUG信息不会被显示)
log4j.rootLogger=debug, stdout, logfile
#log4j.category.org.apache=INFO
log4j.category.org.springframework=info
# log4j.appender.CONSOLE --> 定义名为CONSOLE的输出端是哪种类型,有五个值
# org.apache.log4j.ConsoleAppender(控制台)
# org.apache.log4j.FileAppender(文件)
# org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
# org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
# org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)
# 这里CONSOLE输出端是控制台
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
# log4j.appender.CONSOLE.layout --> 定义名为CONSOLE的输出端的layout布局方式是哪种类型,有四个值
# org.apache.log4j.PatternLayout(可以灵活地指定布局模式)【***】
# org.apache.log4j.HTMLLayout(以HTML表格形式布局)
#org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串)
#org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)
# 这里设置为PatternLayout,可以灵活指定布局的模式
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
# log4j.appender.CONSOLE.layout.ConversionPattern
# 使用PatternLayout布局需要指定打印信息的具体格式ConversionPattern,参数:
# %d 输出日志时间,默认格式为ISO8601,也可以在其后指定格式,如:%d{yyyy-MM-dd HH:mm:ss,SSS},输出类似:2020-10-16 17:02:28,968
# %r 输出自应用启动到输出该log信息耗费的毫秒数
# %t 输出产生该日志事件的线程名(比如main、gc)
# %p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL等方式
# %c 输出所属的类目,通常就是所在类的全名;
# %m 输出代码中指定的消息
# %M 输出打印该条日志的方法名
# %n 输出一个回车换行符,Windows平台为"rn”,Unix平台为"n”;
# %l 输出日志事件的发生位置,及在代码中的行数;
# [QC]是log信息的开头,可以为任意字符,一般为项目简称。
log4j.appender.CONSOLE.layout.ConversionPattern=%d %p [%c] - %m%n
# LOGFILE配置 (名称可以自定义) 这里配置日志文件存储(存储到指定路径)
# log4j.appender.LOGFILE 用于定义名为LOGFILE的输出端的类型为每天产生一个日志文件。
log4j.appender.logfile=org.apache.log4j.RollingFileAppender
# log4j.appender.LOGFILE.File 定义名为LOGFILE的输出端的文件名为C:logmyweb.log(可以自行修改)
log4j.appender.logfile.File=c:\log\myweb.log
log4j.appender.logfile.MaxFileSize=1KB
log4j.appender.logfile.MaxBackupIndex=5
# log4j.appender.LOGFILE.layout 输出日志布局设置PatternLayout,和上面的一样
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
# log4j.appender.LOGFILE.layout.ConversionPattern 自定义格式输出,和上面一样
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n
(2)web.xml
配置字符编码过滤器,配置监听器,配置前端控制器进行请求分发
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
<context-param>
<param-name>contextConfigLocationparam-name>
<param-value>classpath*:spring/applicationContext-*.xmlparam-value>
context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListenerlistener-class>
listener>
<filter>
<filter-name>characterEncodingFilterfilter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilterfilter-class>
<init-param>
<param-name>encodingparam-name>
<param-value>utf-8param-value>
init-param>
filter>
<filter-mapping>
<filter-name>characterEncodingFilterfilter-name>
<url-pattern>/*url-pattern>
filter-mapping>
<servlet>
<servlet-name>dispatcherServletservlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServletservlet-class>
<init-param>
<param-name>contextConfigLocationparam-name>
<param-value>classpath:spring/springmvc.xmlparam-value>
init-param>
<load-on-startup>1load-on-startup>
servlet>
<servlet-mapping>
<servlet-name>dispatcherServletservlet-name>
<url-pattern>*.dourl-pattern>
servlet-mapping>
web-app>
(3)springmvc.xml
开启注解驱动,配置过滤文件,配置视图解析器,扫描controller
<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.smp.web"/>
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/pages/"/>
<property name="suffix" value=".jsp"/>
bean>
<mvc:annotation-driven conversion-service="conversionServiceFactory"/>
beans>
(4)CompanyController测试
srcmainjavacomsmpwebcontrollercompany
@Controller
@RequestMapping("/company")
public class CompanyController {
private static final Logger l= LoggerFactory.getLogger(CompanyController.class);
@Autowired
ICompanyService iCompanyService;
//list.action->list
//访问company/list.do
@RequestMapping(path = "/list.do",method = RequestMethod.GET)
public String list(Model model){
List<Company> list=iCompanyService.findAll();
l.info("list list="+list);
model.addAttribute("list",list);
return "company/company-list";
}
}
(5)company-list.jsp页面数据显示
srcmainwebappWEB-INFpagescompany
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<%--${list}--%>
<a href="#">新增</a>
<table border="1px" width="100%">
<tr>
<td>id</td>
<td>公司名称</td>
<td>到期时间</td>
<td>公司地址</td>
<td>营业执照</td>
<td>法人代表</td>
<td>公司电话</td>
<td>公司规模</td>
<td>所属行业</td>
<td>备注</td>
<td>状态</td>
<td>当前余额</td>
<td>管理</td>
</tr>
<c:forEach items="${list}" var="company">
<tr>
<td>${company.id}</td>
<td>${company.name}</td>
<td>${company.expirationDate}</td>
<td>${company.address}</td>
<td>${company.licenseId}</td>
<td>${company.representative}</td>
<td>${company.phone}</td>
<td>${company.companySize}</td>
<td>${company.industry}</td>
<td>${company.remarks}</td>
<td>${company.state}</td>
<td>${company.balance}</td>
<td><a href="#">删除</a>
<a>|</a>
<a href="#">修改</a>
</td>
</tr>
</c:forEach>
</table>
</body>
</html>
(6)访问地址
打开Tomcat,访问:http://localhost:8080/export_web_manager_war_exploded/company/list.do
转:
【Saas-export项目】--项目整合(spring整合MVC)
【Saas-export项目】--项目整合(spring整合MVC)的更多相关文章
- struts整合spring整合hibernate
1, web.xml中配置spring监听类 <listener> <listener-class>org.springframework.web.context.Contex ...
- 【Java EE 学习 53】【Spring学习第五天】【Spring整合Hibernate】【Spring整合Hibernate、Struts2】【问题:整合hibernate之后事务不能回滚】
一.Spring整合Hibernate 1.如果一个DAO 类继承了HibernateDaoSupport,只需要在spring配置文件中注入SessionFactory就可以了:如果一个DAO类没有 ...
- MyBatis之整合Spring
MyBatis之整合Spring 整合思路: 1.SqlSessionFactory对象应该放到spring容器中作为单例存在 2.传统dao的开发方式中,应该从spring容器中获得sqlSessi ...
- 【转】Nutz | Nutz项目整合Spring实战
http://blog.csdn.net/evan_leung/article/details/54767143 Nutz项目整合Spring实战 前言 Github地址 背景 实现步骤 加入spri ...
- (转)Nutz | Nutz项目整合Spring实战
http://blog.csdn.net/evan_leung/article/details/54767143 Nutz项目整合Spring实战 前言 Github地址 背景 实现步骤 加入spri ...
- Nutz | Nutz项目整合Spring实战
Nutz项目整合Spring实战 前言 Github地址 背景 实现步骤 加入springMvc与Spring 相关配置 新增Spring相关配置 新增SpringIocProvider 重写Nutz ...
- Mybatis与Spring整合,使用了maven管理项目,作为初学者觉得不错,转载下来
转载自:http://www.cnblogs.com/xdp-gacl/p/4271627.html 一.搭建开发环境 1.1.使用Maven创建Web项目 执行如下命令: mvn archetype ...
- Axis2在Web项目中整合Spring
一.说明: 上一篇说了Axis2与Web项目的整合(详情 :Axis2与Web项目整合)过程,如果说在Web项目中使用了Spring框架,那么又改如何进行Axis2相关的配置操作呢? 二.Axis2 ...
- JMS(java消息服务)整合Spring项目案例
转载自云栖社区 摘要: Sprng-jms消息服务小项目 所需的包: spring的基础包 spring-jms-xx包 spring-message–xx包 commons-collection-x ...
随机推荐
- 组合数取模及Lucas定理
引入: 组合数C(m,n)表示在m个不同的元素中取出n个元素(不要求有序),产生的方案数.定义式:C(m,n)=m!/(n!*(m-n)!)(并不会使用LaTex QAQ). 根据题目中对组合数的需要 ...
- Miller_Rabbin算法判断大素数
普通的素数测试我们有O(√ n)的试除算法.事实上,我们有O(s*log³n)的算法. 下面就介绍一下Miller_Rabbin算法思想: 定理一:假如p是质数,且(a,p)=1,那么a^(p-1)≡ ...
- HDU - 1789 dp
题意: 众所周知lyb根本不学习.但是期末到了,平时不写作业的他现在有很多作业要做. CUC的老师很严格,每个老师都会给他一个DDL(deadline). 如果lyb在DDL后交作业,老师就会扣他的分 ...
- JavaScript——五
onload:在加载的时候 因为网页代码是从上到下执行的,所以我们有些对网页内容的操作要先加载出网页内容后再执行script的内容,这个时候如果没有onload我们只能写在这些内容的后面,但是有了lo ...
- Codeforces Round #531 (Div. 3) B. Array K-Coloring (结构体排序)
题意:给你\(n\)个数字,用\(k\)种颜色给他们涂色,要求每个数字都要涂,每种颜色都要用,相同的数字不能涂一样的颜色. 题解:用结构体读入每个数字和它的位置,然后用桶记录每个数字出现的次数,判断是 ...
- vlc音视频开发(一)环境搭建(qt篇)
来源:微信公众号「编程学习基地」 目录 简介 qt配置vlc环境 simple_libvlc_qt_player 项目地址 简介 VLC 是一款自由.开源的跨平台多媒体播放器及框架,可播放大多数多媒体 ...
- 行业动态 | 腾讯合作商Babylon使用Cassandra保护患者数据并提高医疗效果
医疗世界正在快速朝向个性化和低成本的方向发展,Babylon Health看到了这样的机会--通过开创性的云端应用来大幅扩张和改进他们所提供的服务. 通过使用基于Apache Cassandra的 ...
- Base64 编码原理
什么是 Base64 编码 Base64 编码是最常见的编码方式,基于 64 个可打印字符来表示任意二进制数据的方法,是从二进制转换到可见字符的过程. 使用场景 数据加密或签名通过 Base64 转换 ...
- 导出Excel出错
错误提示: 解决方法: 1.运行dcomcnfg打开组件服务. 2.依次展开"组件服务"->"计算机"->"我的电脑"-&g ...
- Linux命令学习-01——find -type
Linux find 命令用来在指定目录下查找文件. 任何位于参数之前的字符串都将被视为欲查找的目录名.如果使用该命令时,不设置任何参数,则 find 命令将在当前目录下查找子目录与文件.并且将查找到 ...