点击
1.maven 项目 配置pom.xml
dependecies:
1.Spring :context
2.Spring :web
3.Spring :webmvc
4.dbcp: commons-dbcp
5.mysql: mysql-connector //数据库驱动
6.Spring:jdbc //要用到其中的 JdbcTemplate ,所以需要导入
7.Jstl : //jsp需要用到 <c:forech>
2.web.xml
1.context(关键字)--->ContextLoaderListener //加载其他需要的xml,
2.dispatcher(关键字)--->DispatcherServlet
这里注意一点:
<servlet-mapping>
<servlet-name>dispathcerservlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
写'/' 加载静态资源!!!
[也可以参考](http://blog.csdn.net/jbgtwang/article/details/7359592)
3.dispatcherservlet.xml:
<mvc:annotation-driven/> //配置注解驱动
<mvc:resources mapping="/movies/**" location="/movies/"/> //加载静态资源
<context:component-scan base-package="org.rf"></context:component-scan> //扫描注解的类
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> //解析jsp,目的:jsp放到WEB-INF下面,受保护也可以访问
<property name="prefix" value="/WEB-INF/jsp/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
4.0 db.properties
dbcp.driverClassName=com.mysql.jdbc.Driver
dbcp.url=jdbc:mysql://127.0.0.1:3306/db_name?useSSL=false //serverTimezone=UTC&注意了:如果报错The server time zone value '�й���ʱ��' is unrecognized or represents more than one time zone
解决方案是:调整mysql版本,原因过高! 参考1:http://blog.csdn.net/u011063151/article/details/51730954 参考2:http://blog.csdn.net/anaini1314/article/details/71157791
dbcp.username=root
dbcp.password=
initialSize=0
#定义最大连接数
maxActive=20
#定义最大空闲
maxIdle=20
#定义最小空闲
minIdle=1
#定义最长等待时间
maxWait=60000
4.db.xml:目的:加载数据库,获得JJdbcTemplate实例
<context:property-placeholder location="classpath:db.properties"/> //导入外部db.Properties文件
<bean id="basicDataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="${dbcp.driverClassName}"></property>
<property name="url" value="${dbcp.url}"></property>
<property name="username" value="${dbcp.username}"></property>
<property name="password" value="${dbcp.password}"></property>
</bean>
<bean class="org.springframework.jdbc.core.JdbcTemplate"> //实例化JdbcTemplate
<constructor-arg ref="basicDataSource"></constructor-arg>
</bean>
5.各层次+注解方式:
dao层:
@Repository //@Component通用的注解 @Controller控制层直接 @Repository Dao层注解 @Service service层注解
public class MovieDaoImpl implements MovieDao{
@Autowired // 引入属性实例
private JdbcTemplate jdbcTemplate;
public List<Movie> selectMovies() {
String sql="select * from movies";
return jdbcTemplate.query(sql, new RowMapper<Movie>(){
public Movie mapRow(ResultSet rs, int rowNum) throws SQLException {
Movie movie=new Movie(rs.getInt(1),rs.getString(2)
,rs.getString(3),rs.getString(4),rs.getString(5));
return movie;
}
});
}
}
service层
@Service
public class MovieServiceImpl implements MovieService{
@Autowired
private MovieDao moviedao;
public List<Movie> selectMovies() {
return moviedao.selectMovies();
}
}
Controller层
@Controller
public class MovieCtroller{
@Autowired
private MovieService movieService;
@RequestMapping("/aaa.s") //访问需要输入的地址
public ModelAndView handleRequest(){
ModelAndView mav=new ModelAndView("test"); //ModeAndView的构造方法:出入jsp 名字
mav.addObject("kk",movieService.selectMovies());
for(Movie a:movieService.selectMovies()){
}
return mav;
}
}
6.jsp页面:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" isELIgnored="false"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> //引入jstl文件
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<c:forEach items="${kk}" var="t"> //el表达式和jstl的配合使用
<video width="320" height="240" controls autoplay>
<source src="${t.getName()}" type="video/mp4">
</video>
</c:forEach>
</body>
</html>