JavaWeb
JarvanStack
保持简单
展开
-
javaweb Java路径问题, 绝对路径和相对路径,获取资源文件路径
一、绝对路径一般不使用,例如D:/Enviroment/hello.jsp二、相对路径1. 概述1.1 不带 / (反斜杠)相对于当前资源路径1.2 带 / 反斜杠 有3种情况(服务端,客户端,资源获取)服务端 : http://localhost:8080/SMBMS_02_war/ (请求转发)客户端: http://localhost:8080/ (html,重定向)资源获取:当前类的路径 class/2. 更多案例参考博客https://www.cnblogs.com原创 2020-07-13 13:59:41 · 338 阅读 · 0 评论 -
javawebTomcat 服务器导入项目的时候 Tomcat的启动按钮是灰色的 只能Debug的解决
关闭IDEA重新打开即可原创 2020-07-12 09:07:08 · 1786 阅读 · 3 评论 -
javaweb (入门篇22)Java中DAO层、Service层和Controller层的区别和联系详解
参考https://blog.csdn.net/qq_22771739/article/details/82344336结构图1. DAO层全称 数据访问层(Data Access Object)具体到某一个表SQL的增删改查2. Service层Service层就是服务层,理解为 对多个DAO进行再次封装,不是原子的操作了,一般涉及到事务的操作,(例如2个DAO的转账)3. Controler层(Servlet)完成接受参数,和请求转发(例如Servlet)...原创 2020-07-10 21:25:32 · 4195 阅读 · 1 评论 -
(重点)JavaWeb(入门篇21)Request 和 Response 详解
一般 request用于获取用户的请求的数据。response用户返回用户数据。参考博客https://blog.csdn.net/a859522265/article/details/7259115一、response1. 向用户发送数据建议使用过滤器filter实现对Servlet的统一编码,防止乱码1.返回字节//1.返回字节//以下代码会查找本机的编码进行发送(GBK)String date1 = "你好世界";ServletOutputStream outputStre.原创 2020-07-06 21:10:47 · 424 阅读 · 0 评论 -
Javaweb中文件的相对路径问题
我们在项目中更习惯于使用相对路径,因为在你部署之后你可能不知道你的代码会跑在哪个地方,所以相对路径十分重要。1.问题描述使用错误的相对路径抛出 (系统找不到指定的路径。)错误原创 2020-06-20 16:32:59 · 539 阅读 · 0 评论 -
(重点)JavaWeb(入门篇20)过滤器Filter实现对已注销用户强制访问登录后界面的拦截
一、过滤器Filter登录拦截1.实现功能实现用户登录后才能进入主页,注销后及时输入主页url也不能进入主页2. 核心代码在需要登录的文件夹加一个过滤器 HttpServletRequest request = (HttpServletRequest) servletRequest; if (request.getSession().getAttribute(Constant.USER_SESSION)==null){ HttpServletR原创 2020-06-19 13:50:10 · 797 阅读 · 0 评论 -
JavaWeb(入门篇19)监听器listener实现在线人数统计。
一、监听器listener实现在线人数统计。1.实现功能实现HttpSessionListener接口,写一个监听类,完成对网站在人数的监听2.核心代码记录所有用户的数据,把生命期提取到 Application (ServletContext)层。 if (context.getAttribute("onlineUsers")!=null){ context.setAttribute("onlineUsers",(Integer)context.getAttr原创 2020-06-18 20:20:27 · 4434 阅读 · 0 评论 -
(重点)JavaWeb(入门篇18)过滤器Filter实现Servlet乱码问题案例
一、过滤器Filter实现Servlet乱码问题案例1. 实现功能,添加一个过滤器,实现所有访问 /filter/* 映射下的Servlet都解决中文乱码问题2.核心代码注意一定要转释放不然其他Servlet拿不到请求。servletRequest.setCharacterEncoding("utf-8");servletResponse.setCharacterEncoding("utf-8");servletResponse.setContentType("text/html;chars原创 2020-06-18 17:36:36 · 256 阅读 · 0 评论 -
JavaWeb IDEA maven 依赖无法自动导包javax.servlet.jsp-api的问题
Cannot resolve javax.servlet.jsp:javax.servlet.jsp-api:2.3.1依赖 <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>javax.servlet.jsp-api</artifactId> <version>2.3.1原创 2020-06-18 16:13:32 · 11109 阅读 · 0 评论 -
JavaWeb(入门篇17)MVC架构入门
一、什么是MVC?MVC (Model View Controller)模型 – 视图 – 控制 架构1.视图层(View)1.展示给用户视图功能2.将请求传递给控Controller制层级3.接受Controller 的转发或者重定向的调用比如jsp,html,2.控制层(Controller)(Servlet)1.接受用户通过视图层发送的请求,2.把请求交给业务层(Service 《 Model)去做3.收到Model模型层放回的数据后完成页面的跳转比如 Ser原创 2020-06-18 10:03:54 · 251 阅读 · 0 评论 -
JavaWeb(入门篇16)jsp 9大内置对象和4种作用域
一、8个内置对象1.引入我们为什么能直接在jsp里面使用 out.print() ?因为: out 对象是一个 内置,对象(这里一共有8个内置对象)2. 九大内置对象1.源码分析,(1)jsp的本质就是转化为 jsp.java ,我们看看源码final javax.servlet.jsp.PageContext pageContext;javax.servlet.http.HttpSession session = null;final javax.servlet.ServletConte原创 2020-06-17 14:30:07 · 250 阅读 · 0 评论 -
JavaWeb(入门篇15)jsp导入header和footer公共页面的2种方法
一、导入公共页面的2种方法1.使用jsp java代码会自动找到需要的页面合并到代码的位置java源码展示位合并,2个页面合并为一个1.关键代码<%@include file="../comment/hearder.jsp"%>2.所有代码<%--一、<%@ 的3种方法2.include 包含页面(一般用于设置公共的头或者尾部)这个jsp就是导入公共页面的实例,使用<%@include--%><%@ page contentType="t原创 2020-06-17 11:32:49 · 4181 阅读 · 0 评论 -
JavaWeb(入门篇14)jsp自定义错误页面的2种方法
一、跳转页面的2种方法注释:文件结构如图1.方法1.使用jsp实现jsp中使用<%@page jsp代码<%@page errorPage="error/error500.jsp" %><%@ page contentType="text/html;charset=UTF-8" language="java" %><%@page errorPage="error/error500.jsp" %><html><head>原创 2020-06-17 11:04:06 · 1274 阅读 · 1 评论 -
JavaWeb(入门篇13)jsp基本语法
一、基本语法1.jsp本质就是用java代码输出字符串,具体参考生成的java源码位置:C:/Users/登录名/.IntelliJIdea2017.2/system/tomcat/Tomcat-pure_工程名/work/Catalina/localhost/appcontext名称/org/apache/jsp2.自动输出的语句块(易错 参考二、1)<%=new String("Hello")%><%=new Date()%>2.第二种表达(同上原创 2020-06-17 10:18:46 · 664 阅读 · 0 评论 -
(重点)JavaWeb(入门篇12)Session的简单实现购物车
一、Session的简单实现购物车1.实现功能根据Session ID 作为标识的功能,实现添加购物车的功能(数据储存在Session不使用数据库),商品展示页展示商品,(ShowGoods)商品添加页可以是展示页提交表单后效果展示(AddGoods )购物车页展示你添加的所有的购物信息(Cart)加入购物车(这里可以使用post去掉过长的url)购物车继续购买购物车清理购物车2. 核心代码1.根据session设置Attribute属性req.getSessio原创 2020-06-16 18:02:32 · 8496 阅读 · 2 评论 -
JavaWeb(入门篇11)Cookie简单实现
1.实现功能实现上次登录的时间Cookie的保存和发送,如果有Cookie就打印上次登录的时间,并返回这次CurrentTime作为这次登录的时间,如果没有Cookie就打印这是你第一次登录Cookie默认存活的时间是 10秒钟,2.核心代码1. 获取Cookiereq.getCookies();2. 获取Cookie的键cookies[i].getName()3. 获取Cookie的值ookies[i].getValue()4. 新建Cookie并设置保存时间Cookie.原创 2020-06-16 14:30:13 · 480 阅读 · 0 评论 -
(重点)JavaWeb(入门篇10)Response重定向实现登录项目
https://blog.csdn.net/qq_37306786/article/details/80484200原创 2020-06-15 21:23:02 · 1195 阅读 · 0 评论 -
JavaWeb(入门篇09)Response验证码实现
1.实现步骤一、步骤1.为了效果展示让浏览器3秒刷新一次,设置图片打开并禁止浏览器2.内存中构建一个图片BufferedImage图片类了解3.用图片的img.getGraphics()方法获得图片画笔4.使用画笔化背景5.随机数字方法6.使用画笔画出随机数字7.使用ImageIO.write()方法吧图片传输到浏览器2.核心代码7.使用ImageIO.write()方法吧图片传输到浏览器ImageIO.write(image,"jpeg",resp.getOutputStream(原创 2020-06-15 16:42:54 · 271 阅读 · 0 评论 -
JavaWeb(入门篇08)Response 下载文件实现
1.实现步骤//1.获取下载路径和 获取下载文件名称(重点)//2.设置头为下载文件头(重点)//3.使用之前的IO缓冲输出文件2.核心代码设置文件头文下载头//2.设置头为下载文件头(重点)resp.setHeader("Content-Disposition","attachment;filename=图片"+ URLEncoder.encode(fileName, "UTF-8"));3.实现代码package com.bmft;import javax.servlet.Se原创 2020-06-15 10:32:01 · 233 阅读 · 0 评论 -
JavaWeb(入门篇07)解决Intellji Idea修改代码以后无效的问题,需要手动打包的问题
一、问题描述:每次修改完代码,重启Tomcat但是发现项目并不能修改成功,需要手动去重新点击 package(一般还是习惯 clean – complie – package 3部曲)麻烦,十分的难受。想了一下idea怎么又如此部方便的设定,于是网上找了好多教程包括这个.博客解决Intellji Idea修改代码以后无效的问题依旧无法解决我的问题,自己寻找设置哪里可以自动打包啥的,终于让我找到了二、解决方案参考1.打开maven设置Setting – Build,Execution,D原创 2020-06-15 10:20:01 · 1782 阅读 · 0 评论 -
JavaWeb(入门篇06)ServletContext,Servlet信息之间的交互
我们打开一个页面由一个Servlet提供,但是我们思考一个问题,我们打开淘宝的时候只需要登录一次,然后就可以访问多个页面了这是怎么实现的呢?有的人想可以一个Servlet提交数据使用IO流储存信息到文件里,然后另一个ServletIO读取即可,这个方法固然可以,但是实现比较麻烦,速度比较慢,不适合大众程序员,于是就有打包好的可用的对象ServletContext对象一、原理1.ServletContext 的原理,ServletContext所有的Servlet共享一个,类似单例模式每个.原创 2020-06-14 16:54:49 · 256 阅读 · 0 评论 -
JavaWeb(入门篇05)Servlet的原理
我们经常用Servlet来写请求和响应,其实请求和响应不是Servlet的职责。还记得你把你把你的Servlet 部署到哪里的么?Web应用里也就是Servlet容器(Tomcat )所有的复杂度的操作,监听端口接受请求,获取 数据,拆解为HTTP,TCP协议连接…最后解析字符串封装道Request对象中。具体参考文章原理如图....原创 2020-06-14 15:43:40 · 155 阅读 · 0 评论 -
JavaWeb(入门篇04)HelloServlet 第一个Servlet
一、父maven项目1.用于搭建子项目,方便搭建更多的子项目子项目可以使用父项目的依赖(类似继承关系)所以在父项目导入合适的依赖(dependencies)十分的方便.二、子项目的搭建1. 优化Maven环境1.修改web.xml为Tomcat的最新2.将maven的结构完善(就是定义代码文件夹和源(sources)文件夹)2.编写一个HelloServlet.java 程序3.将浏览器访问web服务器映射到你的java程序上4.配置Tomcat启动...原创 2020-06-14 11:21:13 · 691 阅读 · 0 评论 -
JavaWeb(入门篇03)HTTP协议详解
参考:https://www.jianshu.com/p/6e9e4156ece3目录一、概述1.计算机网络体系分层结构OSI七层模型TCP/IP概念四层模型功能TCP/IP协议族(1)应用层(1)应用层文件传输,电子邮件,文件服务虚拟终端HTTP,DNS,TFTP,SNMP,FTP,SMTP,Telnet(2)表示层(1)应用层数据格式化,代码转化,数据加密没有协议(没有传输)(3)会话层(1)应用层解除或者建立别的接点的联系没有协议(4原创 2020-06-12 21:35:21 · 392 阅读 · 0 评论 -
JavaWeb(入门篇02)网站的访问如何实现的?
1.输入域名:baidu.com2.访问本地主机(C:\Windows\System32\drivers\etc\host)文件有无到baidu.com的映射(比如localhost就是127.0.0.1的映射)如果本地有就返回主机的IP127.0.0.13.如果本地没有就去DNS服务商寻找对应的主机的IP,返回对应的主机的IP+端口号,4.如果DNS服务商没有就访问失败。...原创 2020-06-11 17:31:02 · 515 阅读 · 0 评论 -
JavaWeb(入门篇01)静态页面和动态页面的区别
一、静态页面1.以.html,htm结尾的网页,2.缺点(1)无法动态更新,没有和数据库交互二、动态页面99%的网站都使用动态页面1.动态可以和数据库交互2.但是如果代码出现问题就要停机维护3.对服务器性能要求较高。...原创 2020-06-11 14:28:25 · 1014 阅读 · 0 评论