建设部网站电子政务网站推广引流最快方法
目录
1.搭建一个maven web项目
2.配置Tomcat
3.测试项目是否能够跑起来
4.导入项目中会遇到的Jar包
5.项目结构搭建
6.项目实体类搭建
7.编写基础公共类
1.数据库配置文件
2.编写数据库的公共类
3.编写字符编码过滤器
3.1web配置注册
4.导入静态资源
1.搭建一个maven web项目
2.配置Tomcat
3.测试项目是否能够跑起来
4.导入项目中会遇到的Jar包
jsp,servlet,mysql驱动,jstl,standard
5.项目结构搭建
6.项目实体类搭建
ORM映射 表---类映射
7.编写基础公共类
1.数据库配置文件
db.properties
driver=com.mysql.jdbc.Driver
url=jdbc:mysql//localhost:3306?useUnicode=true&character=utf-8
username=root
password=2001
2.编写数据库的公共类
package com.kuang.dao;import java.io.IOException;
import java.io.InputStream;
import java.sql.*;
import java.util.Properties;//操作数据库的公共类
public class BaseDao {private static String driver;private static String username;private static String password;private static String url;//静态代码块,类加载的时候就初始化了static {Properties properties = new Properties();//通过类加载器读取对应的资源 等价于 Class.forName()也是一个类加载器,但这个类加载器是加载配置文件的,把配置文件放入输入流中。InputStream is = BaseDao.class.getClassLoader().getResourceAsStream("db.properties");try {properties.load(is);} catch (IOException e) {e.printStackTrace();}driver=properties.getProperty("driver");url=properties.getProperty("url");username=properties.getProperty("username");password=properties.getProperty("password");}//获取数据库的链接public static Connection getConnection(){Connection connection=null;try {Class.forName(driver);connection=DriverManager.getConnection(url,username,password);} catch (Exception e) {e.printStackTrace();}return connection;}//编写查询公共方法public static ResultSet execute(Connection connection, String sql, Object[] param, PreparedStatement preparedStatement,ResultSet resultSet){try {preparedStatement = connection.prepareStatement(sql);for (int i = 0; i <param.length ; i++) {preparedStatement.setObject(i+1,param[i]);}resultSet = preparedStatement.executeQuery();} catch (SQLException e) {e.printStackTrace();}return resultSet;}//编写增删改公共方法public static int execute(Connection connection, String sql, Object[] param, PreparedStatement preparedStatement) throws SQLException {preparedStatement = connection.prepareStatement(sql);for (int i = 0; i <param.length ; i++) {preparedStatement.setObject(i+1,param[i]);}int updateRows = preparedStatement.executeUpdate();return updateRows;}//关闭方法public static boolean closeResource(Connection connection,PreparedStatement preparedStatement,ResultSet resultSet){boolean flag=true;if (resultSet!=null){try {resultSet.close();//GC回收resultSet=null;} catch (SQLException e) {e.printStackTrace();flag=false;}}if (preparedStatement!=null){try {preparedStatement.close();preparedStatement=null;} catch (SQLException e) {e.printStackTrace();flag=false;}}if (connection!=null){try {connection.close();connection=null;} catch (SQLException e) {e.printStackTrace();flag=false;}}return flag;}}
3.编写字符编码过滤器
package com.kuang.filter;import javax.servlet.*;
import java.io.IOException;public class CharacterEncodingFilter implements Filter {@Overridepublic void init(FilterConfig filterConfig) throws ServletException {}@Overridepublic void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {servletRequest.setCharacterEncoding("utf-8");servletResponse.setCharacterEncoding("utf-8");filterChain.doFilter(servletRequest,servletResponse);}@Overridepublic void destroy() {}
}
3.1web配置注册
<filter><filter-name>CharacterEncodingFilter</filter-name><filter-class>com.kuang.filter.CharacterEncodingFilter</filter-class></filter><filter-mapping><filter-name>CharacterEncodingFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping>