![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA
艾诺_Aynor
万物各行其道
展开
-
MVC模式和三层架构(页码EL3)
什么是模式?模式是在开发过程中总结出的"套路",总结出的一套约定俗成的设计模式MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来...原创 2020-03-28 21:33:31 · 480 阅读 · 0 评论 -
JSTL的if标签和forEach标签(页码EL2)
导入jstl标签库<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>if标签<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%><%@...原创 2020-03-28 20:32:59 · 503 阅读 · 0 评论 -
EL表达式、使用EL获取域中数据、EL内置对象、动态获取项目名称(页码EL1)
EL(Expression Language)是为了使JSP写起来更加简单。表达式语言的灵感来自于ECMAScript和XPath表达式语言,它提供了在JSP中简化表达式的方法,EL表达式可以嵌入在Jsp内部,减少Jsp脚本的编写,让Jsp的代码更加简化。EL出现的目的是要替代Jsp页面中脚本的编写。El表达式最重要的作用是从域中取数据其中最重要的是EL的全域查找<!-- 使用el表...原创 2020-03-28 19:07:13 · 1203 阅读 · 0 评论 -
JSP的九大内置/隐式对象、jsp的动态标签、静态包含和动态包含的区别(页码JSP2)
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/h...原创 2020-03-25 18:24:28 · 155 阅读 · 0 评论 -
session技术、完成验证码的校验--会话(页码CK2)
package cn.aynortechnology.session;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import ...原创 2020-03-22 21:28:12 · 324 阅读 · 0 评论 -
cookie的创建、发送与接收--会话(页码CK1)
cookie默认是会话级别的,如何延长cookie的持续时间呢发送cookiepackage cn.aynortechnology.cookie;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.Cookie;import javax.servl...原创 2020-03-22 19:22:01 · 836 阅读 · 0 评论 -
HTTP Servlet Request 获得请求行、请求头、请求体、完成防盗链(页码SR2.1)
有时无法访问服务器其实是DNS服务器宕机可以通过访问URL获得解析前的IP直接访问服务器地址测试代码如下package cn.aynortechnology.line;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;...原创 2020-02-26 21:35:46 · 339 阅读 · 0 评论 -
JAVA语法
for循环for(String hobby:hobbys) { System.out.println(hobby);}/*********************String hobby; //这个语句定义了一个String类型的变量hobbyfor循环会自动将数组的每个元素值循环复制给hobby 相当于for(int i=0;i<hobbys.length;i++)...原创 2020-02-26 19:25:22 · 249 阅读 · 0 评论 -
HTTP Servlet Response完成文件下载、一次性验证码的实现
(页码SR1)HTTP Servlet Response设置响应头、重定向、定时刷新(页码SR2)HTTP Servlet Response设置响应体、发送中文、图片(页码SR3)HTTP Servlet Response文件下载基本代码(页码SR4)HTTP Servlet Response一次性验证码的实现整合:HTTP Servlet Response完成文件下载、一次性验证码的实现...原创 2020-02-23 16:39:52 · 264 阅读 · 0 评论 -
HTTP Servlet Response一次性验证码的实现(页码SR4)
前端<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Insert title here</title><script type="text/javascript"> window.onload = function(){ } ...原创 2020-02-23 14:58:28 · 263 阅读 · 0 评论 -
HTTP Servlet Response文件下载基本代码(页码SR3)
前端代码<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Insert title here</title></head><body> <h1>使用a标签直接指向服务器上的资源</h1> <...原创 2020-02-23 03:45:52 · 129 阅读 · 0 评论 -
HTTP Servlet Response设置响应体、发送中文、图片(页码SR2)
1原创 2020-02-22 21:09:50 · 802 阅读 · 0 评论 -
HTTP Servlet Response设置响应头、重定向、定时刷新(页码SR1)
HTTP Servlet Response运行过程通过Response设置响应行package cn.aynortechnology.line;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.se...原创 2020-02-22 17:19:29 · 1164 阅读 · 0 评论 -
Servlet快速入门,完成使用用户名密码登录的校验
创建一个新的Web工程如果没有安装web应用服务器将无法发布,这里需要先安装好web应用服务器(推荐Tomcat,版本影响不大,这里用的是Tomcat9)web模组版本选取2.5在src下新建一个包,新建一个类实现servlet接口,接口中暂时只使用servlet方法package cn.aynortechnology.servlet;import java.io.IOExcep...原创 2020-02-21 00:36:46 · 1714 阅读 · 0 评论 -
统计用户登录人次(页码S6)
初始化的时候把一个变量存到ContextServlet中@Override public void init() throws ServletException { //在ServletContext域中存一个数据count int count = 0; this.getServletContext().setAttribute("count", count);; }登录方法...原创 2020-02-20 22:14:25 · 321 阅读 · 0 评论 -
ServletContext对象(Servlet上下文对象)(页码S5)
web.xml <!-- 配置全局初始化参数 --> <context-param> <param-name>driver</param-name> <param-value>com.mysql.jdbc.Driver</param-value> </context-param>获...原创 2020-02-20 21:51:17 · 168 阅读 · 0 评论 -
实现用户登录功能(页码S4)
先给数据库创建一张user表,并放入两条用户信息原创 2020-02-16 22:04:31 · 466 阅读 · 1 评论 -
eclipse如何添加模板文件
原创 2020-02-15 16:45:21 · 881 阅读 · 0 评论 -
Servlet的配置(页码S3)
配置欢迎界面,配置后按照自行配置的执行如果不配置欢迎界面,服务器已经默认配置好,也会寻找index文件进行访问原创 2020-02-15 15:58:07 · 159 阅读 · 0 评论 -
Servlet的API和生命周期(页码S2)
本文为上文延续,如果理解起来较为困难可以点击这里阅读上文在init service destroy这些用来实现接口的方法中添加打印标识关闭服务器,重启服务器并在浏览器访问服务器,会发现控制台打印了如下内容也就是init先执行,然后servlet执行,我们刷新浏览器发现init不再执行如此我们引出Servlet的API(生命周期)这张图可以帮助理解不妨思考一下这个问题,能答...原创 2020-02-15 15:21:04 · 141 阅读 · 0 评论 -
什么是Servlet,Servlet快速入门,完成使用用户名密码登录的校验(页码S1)
创建一个新的Web工程如果没有安装web应用服务器将无法发布,这里需要先安装好web应用服务器(推荐Tomcat,版本影响不大,这里用的是Tomcat9)web模组版本选取2.5在src下新建一个包,新建一个类实现servlet接口,接口中暂时只使用servlet方法package cn.aynortechnology.servlet;import java.io.IOExcep...原创 2020-02-15 15:16:16 · 170 阅读 · 0 评论 -
如何使用eclipse发布web应用
1.在Servers会话框中添加web应用服务器2.启动服务器启动成功后显示如下内容若启动失败请细读提示窗,多数情况是因为端口号被占用,若是这种情况需要进入cmd输入netstat -aov检查服务器所在的端口号,并在任务管理器的服务栏中杀掉进程3.进行发布右键服务器选择add and remove选择需要发布的工程然后点击add...原创 2020-02-13 12:23:24 · 1130 阅读 · 0 评论 -
如何查询端口并关闭占用端口的程序
cmd中输入netstat -aov,获取端口号和PID在任务管理器的进程中寻找PID对应的程序杀掉原创 2020-02-13 01:35:12 · 140 阅读 · 0 评论 -
XML解析,DTD约束,Schema约束,反射
XMLXML就是一种数据的描述语言,虽然它是语言,但是通常情况下,它并不具备常见语言的基本功能——被计算机识别并运行。只有依靠另一种语言,来解释它,使它达到你想要的效果或被计算机所接受。DTD约束给XML加以约束DTD约束的引用方法(一般放在XML头下)1.内部DTD,在XML文档内部嵌入DTD,只对当前XML有效2.外部DTD-本地DTD,DTD文档在本地系统上,公司内部自己项目使用...原创 2020-02-12 02:35:42 · 140 阅读 · 0 评论 -
如何拼接SQL语句,以及如何防止SQL注入攻击
在书写SQL语句(或者其他语句)的过程中,有时需要将形参放入准备好的SQL变量中,就需要对语句进行拼接,拼接方法如下,字符串需要整个用双引号包裹,形参需要暴漏在双引号外面,字符串跟形参之间用加号连接。下面对这个SQL语句进行分组分析:正常的语句应该是这样:select * from test(表名) where uname="username" and upassword="password";...原创 2020-01-20 15:09:37 · 7075 阅读 · 1 评论 -
什么时候抛出异常,什么时候处理异常
1、在通用的方法里,不要try去捕获错误,而是直接抛出异常给调用层处理2、用户访问界面处理掉所有可能的异常,并记录详细错误日志,然后返回友好的错误界面给用户,不要抛异常给用户,不友好.异常应当在下层方法中不符合逻辑、出现异常的时候抛出,在上层进行捕获.同样的,假使你为别人提供类库方法,在你的方法中,存在问题就应该抛出。因为别人代码可能依赖于或者调用你的代码,在调用方可进行异常的捕获,从而能...转载 2020-01-20 14:51:20 · 2600 阅读 · 0 评论 -
什么是单元测试(UnitTest),单元测试的作用是什么
单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含义,如C语言中单元指一个函数,Java里单元指一个类,图形化的软件中可以指一个窗口或一个菜单等。总的来说,单元就是人为规定的最小的被测功能模块。单元测试是在软件开发过程中要进行的最低级别的测试活动,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试...转载 2020-01-20 14:11:38 · 10728 阅读 · 0 评论 -
Protected:继承访问权限
关键字protected处理的是继承关系。如果创建了一个新包,并从另一个包中继承一个类,那么唯一可访问的成员就是public类型的成员(当然,如果在同一个包中执行继承工作,就可以操纵所有拥有包访问权限的成员)有时基类的创建者会希望有某个特定成员,把对它的访问权限赋予派生类而不是所有类。这就需要protected来完成这一工作。protected也提供包访问权限,也就是说,相同包内的其他类可以访...原创 2019-09-20 17:07:16 · 580 阅读 · 0 评论 -
JAVA中构造方法可以用什么来修饰
不同于普通方法,构造方法(器)不能是abstract, static, final, native, strictfp, 或者synchronized的。原因如下:构造器不是通过继承得到的,所以没有必要把它声明为final的。同理,一个抽象的构造器将永远不会被实现。(所以也不能声明为abstract的)构造器总是关联一个对象而被调用,所以把它声明为static是没有意义的。...原创 2019-08-29 19:38:22 · 4151 阅读 · 1 评论 -
JAVA中index() 函数用法详解
index() 函数用于从列表中找出某个值第一个匹配项的索引位置。l=[“an”,“Aynor”,1,3]l.index(1)2l.index(3)3l.index(“an”)0l.index(“Aynor”)1#若查找的值不在列表中,则会报异常l.index(“s”)Traceback (most recent call last):File “”, line 1, i...原创 2019-08-26 23:43:02 · 23044 阅读 · 1 评论 -
private:你无法访问
除了包含该成员的类以外,任何其他类都无法访问这个成员。这等于说是隔离了自己,从另一方面说,共同合作创建一个包也是不大可能的。这也就是private的作用,允许你随意改变该成员,而不必考虑这样做是否会影响到包内的其他类。在多线程环境下,private的作用更加被凸显。...原创 2019-09-20 15:12:08 · 420 阅读 · 0 评论 -
JAVA中内部类的用法
非静态内部类package cn.aynortechnology.oop;/* * 测试非晶态内部类 */public class TestInnerclass { public static void main(String[] args) { //创建内部类对象 Outer.Inner inner = new Outer().new Inner(); //创建内部类对象的时...原创 2019-09-14 18:52:12 · 123 阅读 · 0 评论 -
JAVA中接口的作用和用法
创建一个接口文件package cn.aynortechnology.oop;/* * 接口中所有方法都是抽象方法 * 更加全面的实现了规范和具体实现的分离 * 接口里面只能定义常量 */public interface MyInterface { //首字母大写,下划线分割 int Max_Age = 40; //默认加了public static final,是常量 vo...原创 2019-09-14 17:52:49 · 327 阅读 · 0 评论 -
JAVA中parse用法
1.parse()是SimpleDateFomat里面的方法parseInt()或parsefloat()顾名思义 比如说parseInt()就是把String类型转化为int类型。如 String a= “123”;int b = Integer.parseInt(a);这样b就等于123了。2.ValueOf()方法比如说 Integer.valueOf() 是把String类型转化...原创 2019-08-27 11:53:46 · 47579 阅读 · 8 评论 -
JAVA中Random对象的用法---输出随机数
Random可以输出随机数,使用方法如下import java.util.Random;public class Main{public static void main(String args[]){Random r = new Random();int a = r.nextInt();int b = r.nextInt();System.out.println(a);Sys...原创 2019-08-27 11:01:41 · 801 阅读 · 0 评论 -
JAVA中StringTokenizer的用法
1.int countTokens--------------------------返回nextToken方法被调用的次数。2.boolean hasMoreTokens--------------返回是否还有分隔符。3.boolean hasMoreElements-----------返回是否还有分隔符。4.String nextToken-----------------------...原创 2019-08-27 10:56:07 · 492 阅读 · 0 评论 -
JAVA中startwith函数的用法
startsWith(String str)就是检查形参参数是否与你要检查的字符串开头相同,返回的是布尔值,形参参数可以是字符,也可以是字符串startsWith(Sring str,int Index)则是从你要比较的原字符串的指定下标开始和形参作比较这里边呢str.startsWith(String str)和str.startsWith(string str,0)是没有区别的...原创 2019-08-27 01:41:11 · 2860 阅读 · 0 评论 -
JAVA中lastIndexof函数的用法
lastIndexof函数返回字符串中最后一个指定字符的位置注意位置从0开始计数,空格也计入数量“Aynor is a wolf”.lastIndexOf(“w”);11原创 2019-08-27 00:20:50 · 481 阅读 · 0 评论 -
JAVA中equalsIgnoreCase的用法
equalsIgnoreCase( )方法可以执行忽略大小写的比较。当比较两个字符串的时候,忽视大小写,认为A-Z与a-z是相同的。“Aynor”.equalsIgnoreCase(“aynor”)返回的值是true。...原创 2019-08-27 00:03:00 · 1757 阅读 · 0 评论 -
JAVA中contains函数的用法(字符)
boolean contains(CharSequence s) :判断指定内容中是否包含括号中的内容;一般推荐把常量字符串写在前面 , 变量写在后面.原创 2019-08-26 23:33:04 · 20370 阅读 · 0 评论