Servlet
Servlet的生命周期
servlet的生命周期就是从servlet的创建到销毁的过程。
1.创建对象和初始化时期
当客户端来一个请求时服务器创建一个Servlet实例,然后调用init()
方法来初始化这个实例,只有实例初始化成功,Servlet才能接收客户的请求
2.Servlet执行时期
初始化成功后,进入Servlet的执行时期,调用doGet或者doPost方法
3.Servlet的结束时期
Servlet会一直运行直到服务器停止,在结束时,需要收回在init()方法中使用的资源,通过destroy()
来实现。
JDBC驱动过程
主要分为七个步骤
1.加载JDBC驱动
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@localhost:1521:ORACLEDB";
加载Oracle数据库驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
加载SQL Server数据库驱动Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
加载MySQL 数据库驱动Class.forName("com.mysql.jdbc.Driver");
2.建立并获取数据库连接对象
connection=DriverManager.getConnection(url,user,password);
String sql="select * from userinfo where user_id=?";
3.创建JDBC 对象
Connection connection=null;
PerparedStatement stmt=null;
stmt=connection.prepareStatement(sql);
4.设置SQL语句的传入参数
stmt.setString(1,"zhangsan");
5.执行SQL语句并返回结果
ResultSet rs=null;
rs=stmt.executeQuery();
6.对查询结果进行转换处理并处理结果返回
finally {
if(connection!=null){
connection.close();
}
if(ps!=null){
ps.close();
}
if(resultSet!=null){
resultSet.close();
}
}
7.释放相关资源
MVC执行流程
- 用户通过浏览器向服务器发送服务请求,请求会被Spring MVC的前端控制器 DispatcherServlet拦截。
- DsipatcherServlet拦截请求后,会调用HandlerMapping处理器处理映射。
- 处理器根据URL找到具体的处理器,生成处理器对象 及 处理器拦截器,一并返回给DispatcherServlet
- DispatcherServlet会通过返回的信息选择合适的HandlerAdapter
- HanandlerAdapter会调用执行Handler(处理器) 也就是Controller。
- Controller执行玩后会返回一个ModelAndView对象,对象包含试图名或包含模型和视图名。
- HandlerAdpater将返回值返回给DispatcherServlet
- DispatcherServlet会根据ModelAndView选择一个合适的视图解析器。
- 返回给前端浏览器。
对称加密和非对称加密
对称加密:
对称加密指的就是加密和解密使用同一个秘钥,所以叫做对称加密。对称加密只有一个秘钥,作为私钥。
常见的对称加密算法:DES,AES,3DES等等。
非对称加密 :
非对称加密指的是:加密和解密使用不同的秘钥,一把作为公开的公钥,另一把作为私钥。公钥加密的信息,只有私钥才能解密。私钥加密的信息,只有公钥才能解密。常见的非对称加密算法:RSA,ECC
区别
对称加密算法相比非对称加密算法来说,加解密的效率要高得多。但是缺陷在于对于秘钥的管理上,以及在非安全信道中通讯时,密钥交换的安全性不能保障。所以在实际的网络环境中,会将两者混合使用.