摘要:
一、AOP注解开发
此处需要回忆一遍AOP的概念。简单的来说,AOP就是利用动态代理技术,做到不触动源代码但却扩展了功能。那么就需要一个被扩展的对象和一个“新的功能”,例如说给某类的saveUser方法增加输出日志需求,此时输出日志该事件就是一个“新的功能”。举这个例子的重点只是为了突出,AOP技术需要关注两个方... 阅读原文
2018-02-05 09:37:04 阅读(778) 评论(0)
摘要:
数据库准备:
CREATE DATABASE web;
USE web;
CREATE TABLE `user` (
`uid` VARCHAR(64) NOT NULL,
`username` VARCHAR(20) DEFAULT NULL,
`password` VARCHAR(20) DEFA... 阅读原文
2018-02-05 08:06:07 阅读(758) 评论(0)
摘要:
一. 身份验证
身份验证,即在应用中谁能证明他就是他本人。一般提供如他们的身份ID一些标识信息来表明他就是他本人,如提供身份证,用户名/密码来证明。在shiro中,用户需要提供principals (身份)和credentials(证明)给shiro,从而应用能验证用户身份:
principals:身份,即主体的... 阅读原文
2018-02-05 07:41:02 阅读(767) 评论(0)
摘要:
一. 准备工作
1. 本文参考自张开涛的 《跟我学Shiro》
二. 简介
1. Apache Shiro是Java的一个安全框架。可以帮助我们完成:认证、授权、加密、会话管理、与Web集成、缓存等。其基本功能点如下图所示:
Authentication:身份认证/登录,验证用户是不是拥有相... 阅读原文
2018-02-05 07:18:03 阅读(781) 评论(0)
摘要:
什么是Serlvet?
Servlet其实就是一个遵循Servlet开发的java类。Serlvet是由服务器调用的,运行在服务器端。
为什么要用到Serlvet?
我们编写java程序想要在网上实现 聊天、发帖、这样一些的交互功能,普通的java技术是非常难完成的。sun公司就提供了Serlvet这种技术供我们使用... 阅读原文
2018-02-05 00:00:46 阅读(750) 评论(0)
摘要:
Executor是Java线程池的顶级接口
接口中最核心的一个类:ThreadPoolExecutor 中的构造方法:
public ThreadPoolExecutor(int corePoolSize, // 10 int maximum... 阅读原文
2018-02-04 19:35:03 阅读(760) 评论(0)
摘要:
什么是Activity劫持
简单的说就是APP正常的Activity界面被恶意攻击者替换上仿冒的恶意Activity界面进行攻击和非法用途。界面劫持攻击通常难被识别出来,其造成的后果不仅会给用户带来严重损失,更是移动应用开发者们的恶梦。举个例子来说,当用户打开安卓手机上的某一应用,进入到登陆页面,这时... 阅读原文
2018-02-04 19:07:02 阅读(753) 评论(0)
摘要:
容器
Servlet没有main()方法,它们受控于另一个Java应用,这个Java应用称为容器(Container)。我们最常见的tomcat就是这样一个容器。
Web服务器应用(如Apache)得到一个指向Servlet的请求(而不是其他请求,如请求一个普通的静态HTML页面)时,服务器不是把这个请... 阅读原文
2018-02-04 17:34:02 阅读(731) 评论(0)
摘要:
这里介绍简单的验证码功能
动态生成图片
一个简单的页面:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<... 阅读原文
2018-02-04 16:56:05 阅读(790) 评论(0)
摘要:
什么是Tomcat
Tomcat简单的说就是一个运行JAVA的网络服务器,底层是Socket的一个程序,它也是JSP和Serlvet的一个容器。
为什么我们需要用到Tomcat
如果你学过html,css,你会知道你写的页面只能自己访问,别人不能远程访问你写的页面,Tomcat就是提供能够让别人访问自己写的页面的一... 阅读原文
2018-02-04 16:47:41 阅读(788) 评论(0)