javaweb
文章平均质量分 89
海棠花开
主要记录和分享学习内容。
展开
-
Ajax前后端数据交互实现及部分坑点
各类后端技术汇总点这里编写前端代码这里用的是jquery提供的ajax,所以需要先导入jquery文件。导入方式如下: <script src="${pageContext.request.contextPath}/js/jquery-3.4.1.js" type="text/javascript">这里由于是在springmvc的环境下写的,所以需要配置允许访问静态资源...原创 2020-02-29 22:05:32 · 420 阅读 · 0 评论 -
JavaWeb各类技术汇总
1原创 2020-02-29 22:03:34 · 444 阅读 · 0 评论 -
5.2其他WEB技术——文件下载
JAVAWEB学习文章索引点这里 文件下载可以使用超链接直接请求资源,但是主要还在servlet中进行操作,这样做更加安全,用户不知道资源的实际位置,也可以增加其他的业务操作。 需要注意的是: 1,以相对路径的方式获取资源,更加灵活点 2,中文文件名获取资源后要进行字符集编码 3,针对不同的浏览器需要设置不同的响应头 4,代码中download文件夹在WebContent下 代码如下...原创 2018-07-16 22:35:10 · 148 阅读 · 0 评论 -
5.1其他WEB技术——文件上传
JAVAWEB学习文章索引点这里 文件上传需要注意的地方: 1,表单类型需要设置为post类型 2,表单提交方式为input标签 type=”file” 3,from标签的enctype属性需要设置为”mutipart/form-data” 4,如果上传文件比较单一的话可以手写上传方式,这里使用的是apache的上传工具包,需要导包commons-fileupload.jar和commo...原创 2018-07-16 15:07:37 · 165 阅读 · 0 评论 -
4.3过滤器和监听器——过滤器案例,设置全站统一编码
JAVAWEB学习文章索引点这里 由于接受参数的时候可能有中文字符,所以需要设置字符编码。但是如果所有的页面都进行设置字符编码这样代码的重复量很大。所以我们直接在过滤器中统一进行设置。 首先写一个登录页面:&amp;lt;%@ page language=&quot;java&quot; contentType=&quot;text/html; charset=UTF-8&quot; pageEncoding=&原创 2018-06-27 20:46:39 · 252 阅读 · 0 评论 -
4.2过滤器和监听器——过滤器常用内容补充,装饰者设计模式
装饰者设计模式 装饰者设计模式,指的是通过包装类的方式,动态地增强某个类的功能。其特点如下: 1,包装类和被包装类要实现同样的接口。某些时候也可以是继承一些实现类。 2,包装类持有一个被包装对象(通常在包装类的构造方法中传递一个被包装类的对象的参数) 3,包装类在实现接口的过程中,对于不需要包装的方法原封不动得调用被包装对象的方法来实现,需要包装的方法自己实现 下面一个手机的例子:p...原创 2018-06-27 16:57:12 · 181 阅读 · 0 评论 -
4.1过滤器和监听器——过滤器案例,实现自动登录功能。
JAVAWEB学习文章索引点击这里 效果:进入主页,判断是否登录,如果没有登录则可点击跳转到登录页面,如果登录了,就显示欢迎,并且有注销选项。登陆后,判断账号密码,是否正确,若正确则写入session、cookie,并返回主页,如果不正确返回登录页面,并提示登录错误。如果点击注销按钮,修改cookie,清除掉session中内容。正确登陆后,关闭浏览器,重新打开浏览器,直接访问主页url,发现可...原创 2018-06-26 21:31:46 · 432 阅读 · 0 评论 -
4.0过滤器和监听器——filter和filter链
JAVAWEB学习文章索引点这里 1.Filter介绍 Filter被称作过滤器或拦截器,其基本功能就是对Servlet容器调用Servlet的过程进行拦截,从而在Servlet进行响应处理前后实现一些特殊功能。 Filter接口中的方法 init(FilterConfig filterConfig) 用于初始化过滤器,由服务器开启时自动调用一次。如果要使用...原创 2018-06-25 21:21:53 · 672 阅读 · 0 评论 -
1.8会话跟踪——Cookie技术
Internet通信协议分为两大类,有状态协议和无状态协议。两者最大的差别在于客户端和服务器之间维持联机上的不同。Http协议是一种无状态协议,采用“连接—请求—应答—关闭连接”模式,请求结束随即就会关闭连接。而Web应用的交互式是十分重要的,而Http协议不能保持状态,所以需要引入其他技术来解决这些问题。会话跟踪技术是一种在客户端和服务器之间保持HTTP状态的解决方案。要做到上次请求传递的数据可...原创 2018-06-10 21:27:04 · 488 阅读 · 0 评论 -
4.4过滤器和监听器——过滤器案例,对页面输出内容进行gzip压缩
JAVAWEB文章索引点这里 模拟输出一些字符,使用装饰者设计模式重写response对象的PrintWriter对象。然后在过滤器中兑内容进行一个压缩输出。 servlet内容package com.servlet;import java.io.IOException;import java.util.zip.GZIPOutputStream;import javax.servl...原创 2018-06-28 17:52:11 · 180 阅读 · 0 评论 -
5.3技术补充——JUnit断言测试
JavaWeb学习文章索引点这里 JUnit断言测试注意事项: 1,在eclipse中build path里添加libarry,目前是JUnit5 2,JUnit方法顶部需要加上@Test注解 3,方法必须public void 方法名() 形式,可以抛出异常 4,单独运行一个方法选中方法名,右键点击进行运行 5,运行所有方法选中类名,右键点击进行运行 断言类的一些方法: 断言...原创 2018-07-17 14:49:02 · 615 阅读 · 0 评论 -
4.5过滤器和监听器——监听器
Servlet事件监听器的原理和GUI中的监听器的原理一致。不过这里主要监听的是ServletContext、session、request等对象以及其属性变更。 ServletContextListener接口中:方法说明contextInitialized(ServletContextEvent event)当ServletContext对象被创建时,web容器会调用con...原创 2018-07-04 19:12:38 · 191 阅读 · 0 评论 -
5.4技术补充——反射机制
JAVA反射机制:JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性。其可以于运行时加载、探知、使用编译期间完全未知的classes,并得知名称,获悉其完整构造(但不包括methods定义),生成其对象实体、或对其fields设值、或唤起其methods。 主要探讨的类:类描述Class类对象,可以获...原创 2018-07-17 19:48:51 · 141 阅读 · 0 评论 -
5.5其他WEB技术——利用反射泛型写通用DAO层
JAVAWEB学习文章索引点这里 注意事项: 1,程序结构为BaseDao,PersonDao和StudentDao直接继承BaseDao。BaseDao中写一些通用点的方法 2,需要导入dbutils,c3p0,mysql驱动等包 3,表分别为person(id,name),student(id,name)预先填入了部分数据首先介绍用于获取数据源的DBUtils:package ...原创 2018-07-18 15:26:43 · 393 阅读 · 0 评论 -
5.6其他WEB技术——利用反射注解写通用DAO层
1,注解简单介绍: 注解(Annotation),也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。 常见注解:注解形式注解作用@Override告诉编译器强制对方法进行覆盖@SuppressWarnings告诉编译器压制代...原创 2018-07-18 20:46:56 · 405 阅读 · 0 评论 -
5.7其他WEB技术——用java的mail类发送邮件
JAVAWEN文章索引点这里 注意事项: 1,eclipse中使用javax.mail和javax.activation需要导入jar包 2,本案例使用smtp发送协议,需要在QQ邮箱中打开设置,并获取对应的授权码作为密码。QQ邮箱授权码获取方式 代码如下:package com.mail;import java.io.File;import java.util.Properti...原创 2018-07-19 20:30:39 · 593 阅读 · 0 评论 -
JavaWeb框架学习文章索引
1.Struts2原创 2018-07-20 14:19:55 · 382 阅读 · 0 评论 -
5.0其他WEB技术——分页和模糊查询结合实例
JAVAWEB文章索引点这里 首先分页的核心是写一个PageBean对象,将页面中要使用到的首页、上页、下页、末页、页数、查询出的内容等等进行一个封装。然后转发回到页面中进行一个显示。而模糊查询的核心是对sql语句进行一个拼接,达到模糊匹配需要内容的效果。 数据库Store中有表product(id,name,bar_code,price,producer) 需要用到的jar包邮jstl,s...原创 2018-07-15 13:53:48 · 1089 阅读 · 0 评论 -
Spring1.2——基于xml的bean装配的生命周期
初始化和销毁: 1,需要有初始化和销毁方法,然后在xml中对应进行配置 2,初始化会自动调用,销毁需要手动调用 3,被销毁容器得是close方法并且只能销毁单例 例子package com.d_lifestyle;public class Car { public void run() { System.out.println(&quot;car run&quot;); ...原创 2018-07-29 19:12:05 · 221 阅读 · 0 评论 -
1.7Servlet学习——HttpServletResponse接口相关内容全解
在Servlet api 中,ServletResponse接口被定义为用于创建响应消息,ServletResponse对象由Servlet容器在用户每次请求Servlet时创建并传入Servlet的service()中。HttpServletResponse继承自ServletResponse接口,是专用于HTTP协议的子接口,用于封装HTTP响应消息。在HTTPServlet类的service...原创 2018-06-10 17:45:58 · 767 阅读 · 0 评论 -
1.6Servlet学习——HttpServletRequset接口相关内容全解
HttpServletRequest接口:在Servlet API中,ServletRequest接口被定义为用于封装请求的信息,ServletRequest对象由Servlet容器在用户请求Servlet时创建并传入Servlet的service()方法中。HttpServletRequest接口继承了ServletRequest接口,是专用于HTTP协议的子接口,用于封装HTTP请求信息。在H...原创 2018-06-10 15:51:35 · 933 阅读 · 0 评论 -
3.1JDBC学习——使用类加载器加载配置文件和JDBC批处理
方法介绍: void load(InputStream inStream) 从输入流中读取属性列表(键和元素对)。代码:public static void main(String[] args){ Properties popt = new Properties(); Class clazz = Test.class; InputStream in = claz...原创 2018-06-21 16:13:49 · 229 阅读 · 0 评论 -
1.2Servlet学习——Servlet和HttpServlet源码解析及Servlet生命周期
Servlet抽象类:package javax.servlet;import java.io.IOException;public interface Servlet { public void init(ServletConfig config) throws ServletException;//初始化 public ServletConfig getServle...原创 2018-06-06 23:19:10 · 371 阅读 · 0 评论 -
1.1Servlet学习——Http协议简单介绍
http协议也就是超文本传输协议,是tcp/ip协议的一个应用层协议。主要用于浏览器和服务器之间交换数据。原创 2018-06-06 20:04:44 · 302 阅读 · 0 评论 -
2.1JSP学习——内置对象
JSP内置对象是指在JSP中,不用声明就可以在脚本和表达式中直接使用的对象。对象名称说明requestjavax.servlet.http.HttpServletRequest,请求对象responsejavax.servlet.http.HttpServletResponse,响应对象outjavax.servlet.jspWriter,输出对象sessionjavax.sevlet.http....原创 2018-06-13 19:21:05 · 182 阅读 · 0 评论 -
3.0JDBC学习——jdbc几种基本操作方式
首先说明的是不同数据库加载的驱动路径和url是不同的这里暂时介绍mysql和sqlserverStatement:例子:用Statement方式查询mysql数据库1.获取数据库连接对象import java.sql.*;public class DBUtils { private static String url = "jdbc:mysql://localhost:3306/java...原创 2018-06-20 20:40:55 · 314 阅读 · 0 评论 -
2.0JSP学习——指令元素和动作元素
指令元素:JSP指令用来向JSP容器提供编译信息。指令并不向客户端产生任何输出,所有的指令都只在当前页面中有效。JSP指令元素包括了3种,page指令、include指令、taglib指令。page指令:page指令描述了和页面相关的信息,如导入所需类包,指明输出内容类型和控制Session等。page指令一般位于JSP页面的开头部分,一个JSP页面中,page指令可以出现多次,但是每个page指...原创 2018-06-12 16:46:26 · 1233 阅读 · 0 评论 -
1.10会话跟踪——URL重写技术和隐藏表单域
URL重写是指服务器对接收的URL请求重新写成网站可以处理的另一个URL。在实际使用中,不能够确定客户端浏览器是否支持Cookie,使用URL重写技术可以对请求的URL地址追加会话标识,从而实现会话跟踪功能。比如一个请求URL是:http://localhost:8080/JavaWeb/test重写后的URL是:http://localhost:8080/JavaWeb/test;jsessio...原创 2018-06-11 19:48:47 · 731 阅读 · 0 评论 -
1.9会话跟踪——Session技术
Session技术是指使用HttpSession对象实现会话跟踪的技术,是一种在服务器端保持会话跟踪的解决方案。HttpSession对象也被称为会话对象,该对象用来保存单个用户访问时的一些信息,是服务器在无状态的http协议下用来识别和维护具体某个用户的主要方式HttpSession对象会在用户第一次访问服务器时由容器创建(只有访问jsp,servlet等才会创建),当用户调用其失效方法(inc...原创 2018-06-11 13:18:57 · 449 阅读 · 0 评论 -
JavaWeb学习文章索引
1,Servlet部分1.1Servlet学习——Http协议简单介绍1.2Servlet学习——Servlet和HttpServlet源码解析及Servlet生命周期1.3Servlet学习——Servlet的配置、数据请求、转发和重定向1.4Servlet学习——Servlet3.0特性1.5Servlet学习——ServletConfig接口、Servlet初始化参数配置...原创 2018-06-21 16:18:05 · 490 阅读 · 0 评论 -
3.2JDBC学习——使用CLOB和BLOB处理大文本数据
JAVAWEB文章索引 CLOB例子: 在实际开发中,CLOB用于存储大文本数据,但是对于mysql而言,大文本数据的存储是用text类型表示的。 首先我们先建一张表: bigtexttest(id,text),其中text设置为longtext类型。再在src下面放了一个文件,软件安装.txt。 下面我们进行大文本数据的写入。 代码: public static void ...原创 2018-06-21 17:49:29 · 397 阅读 · 0 评论 -
3.5JDBC学习——数据库连接池工具C3P0数据源
C3P0 C3P0是目前醉流行的开源数据库连接池之一,它实现了DataSource数据源接口,支持JDBC2和JDBC3的标准规范,易于拓展并且性能优越,著名的开源框架Hibernate和Spring使用的都是该数据源。ComboPooledDataSource是DataSource接口的实现类,它提供了数据源的对象相关的方法。需要导入jar包。C3P0 它可以通过类似于DBCP中设置参数的方...原创 2018-06-25 12:05:23 · 244 阅读 · 0 评论 -
2.2JSP学习——JSTL标签库
JSTP是一个标准的通用型标签库。JSTL主要提供给javaweb开发人员各标准通用的标签函数库,标签库同时支持EL用于获取数据。用这个标签库可以取代传统直接在页面中嵌入java脚本的做法。要使用JSTL需要先导入它的jar包,方法参照:方法1.核心标签库核心标签库主要分为以下四类:通用标签,用于操作变量条件标签,用于流程控制迭代标签,用于循环遍历集合URL标签库,用于针对URL相关的操作导入方法...原创 2018-06-18 11:13:57 · 313 阅读 · 0 评论 -
2.2JSP学习——表达式语言
EL是一种简单的语言,可以方便地访问和处理应用程序数据,而无需使用JSP脚本元素或JSP表达式。其最大的优势是方便地访问JSP的隐含对象和javabean组件,使JSP页面从HTML代码中嵌入java代码的混乱结构得以改善,提高了程序的可读性和易维护性。特点:可以访问JSP的内置对象简化了对javabean、集合的访问方式可以对数据进行自动类型转换可以通过各种运算符进行运算可以使用自定义函数实现跟...原创 2018-06-17 16:03:00 · 440 阅读 · 0 评论 -
1.5Servlet学习——ServletConfig接口、Servlet初始化参数配置连接数据库和ServletContext接口
ServletConfig借口:容器在初始化一个Servlet时,将为该Servlet创建一个唯一的ServletConfig对象,并将这个Servletconfig对象通过init(ServletConfig config方法)传递并保存在此Servlet对象中。...原创 2018-06-09 21:17:46 · 817 阅读 · 0 评论 -
1.4Servlet学习——Servlet3.0特性
留坑以后补上。强势围观原创 2018-06-09 16:58:56 · 152 阅读 · 0 评论 -
1.3Servlet学习——Servlet的配置、数据请求、转发和重定向
在web.xml中配置Servlet如下: <servlet> <servlet-name>ServletTest</servlet-name> <servlet-class>com.servlet.ServletTest</servlet-class> </servlet> <servlet-ma...原创 2018-06-09 16:41:19 · 232 阅读 · 0 评论 -
3.4JDBC学习——数据库连接池工具DBCP数据源
JAVAWEB文章索引点击这里 DBCP数据源 DBCP是数据库连接池(DataBase Connection Pool)的简称,是Apache组织下的开源连接池,也是TomCat使用的连接池组件。使用它需要导入包,下载点击这里。然后在里面分别找到commons-dbcp2、commons-logging、commons-pool2三个包并下载。 连接池使用方式如下: 首先写一个数据库的配...原创 2018-06-21 21:26:40 · 620 阅读 · 0 评论 -
3.3JDBC学习——获取自增长的值和JDBC处理事务
JAVAWEB文章索引点这里 下面介绍如何获取自增长的值: 首先定义一张表increase(id,name),其中id为自增长的值 代码public class IncreaseTest { public static void main(String[] args) { String sql = "insert into increase(name) value...原创 2018-06-21 19:38:22 · 213 阅读 · 0 评论 -
网站首页和虚拟网站的配置
工具:tomcat 8.5首先 tomcat\bin\startup.bat启动tomcat服务器。在浏览器中是直接可以访问其主页的 localhost:8080。因为 tomcat\webapps 里面有一个ROOT,这个就是改主页。那么我们开始配置主页:直接将web程序的文件名定义为ROOT,然后在里面创建WEB-INF文件夹,在WEB-INF里面再创建一个配置文件web.xm原创 2018-05-03 17:17:07 · 240 阅读 · 0 评论