前台和后台不直接通信,只是他们用的是同一个数据库。后台对数据库进行维护,前台把数据取出来展示。
一、课程计划
1 前台系统搭建
2 商城首页展示
3 Cms系统的实现
- 内容分类管理
- 内容管理
4 前台内容动态展示
二、商城首页展示
系统架构图:
1.1. 工程搭建
E3-portal-web(war)
可以参考e3-manager-web工程搭建
pom.xml
内容参考e3-manager-web的pom.xml。
把e3-manager-interface先注释掉,因为不知道有没有用到。
把文件上传的依赖删掉,因为首页哪有上传的功能。
把tomcat插件的端口改成8083.
配置文件
去e3-manager-web中拷贝src/main/resources下的配置文件
client.conf用于图片上传。这里没有图片上传功能,所以,这个文件删掉。
resource.properties有可能会配一些东西,内容先清空。
springmvc.xml中,不同的工程,报名要不一样。
配不配置资源映射,取决于拦截形式。如果拦截形式为“/”,就需要。
这里,我们不需要,删除。
定义文件上传解析器的配置删除。
web.xml配置
<?xml version="1.0" encoding="UTF-8"?>
<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"
id="WebApp_ID" version="2.5">
<display-name>e3-portal-web</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<!-- 解决post乱码 -->
<filter>
<filter-name>CharacterEncodingFilter</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>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- springmvc的前端控制器 -->
<servlet>
<servlet-name>e3-portal-web</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!-- contextConfigLocation不是必须的, 如果不配置contextConfigLocation, springmvc的配置文件默认在:WEB-INF/servlet的name+"-servlet.xml" -->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/springmvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>e3-portal-web</servlet-name>
<!-- 伪静态化 -->
<url-pattern>*.html</url-pattern>
</servlet-mapping>
</web-app>
导入静态页面:
controller指的是类,handler指的是方法。
处理器,处理的是请求,一个请求对应一个处理器,就是controller里面的方法啦。
我们在地址栏里面没有输入资源的名称,那就访问在web.xml中配置的欢迎页index.html。在静态资源里面没有index.html, 那请求就被拦截器拦截,就交给了controller,找到了index。
轮播图就出来了:
这个轮播图里面的图片,需要有后台来管理,叫做cms系统(content manager service)。