首页
留言
友链
壁纸
更多
直播
追番
统计
关于
Search
1
欢迎使用 Typecho
227 阅读
2
【教程】ALT+小键盘输出字母、数字、符号、汉字_alt加小键盘
216 阅读
3
Java的一些基础知识总结
205 阅读
4
为Joe主题增加表情包
203 阅读
5
『转载』Linux文件自动备份百度网盘
193 阅读
默认分类
Java
Java基础知识
Java面向对象
JavaWeb服务
前端三剑客
HTML
JS
Typecho
前端小结
Vue
登录
/
注册
Search
标签搜索
Java
Servlet
HTML
面向对象
Vue
Web
JS
Typecho
Typora
Markdown
乐抖系统
Typecho主题
技术教程
类与对象
基础知识
Tomcat
Maven
Linux
MySQL
Mybatis
白衣少年
累计撰写
49
篇文章
累计收到
48
条评论
首页
栏目
默认分类
Java
Java基础知识
Java面向对象
JavaWeb服务
前端三剑客
HTML
JS
Typecho
前端小结
Vue
页面
留言
友链
壁纸
直播
追番
统计
关于
用户登录
登录
注册
搜索到
27
篇
标签为
Java
的文章
2022-11-02
Java-Servlet介绍
Servlet是什么?servlet是Server Applet的简称,翻译过来就是服务程序。我们知道,一般的网页程序,是由我们通过浏览器访问来实现的,在这个过程中,我们的浏览器发送访问请求,服务器接收请求,并对浏览器的请求作出相应的处理.这就是我们熟悉的B/S模型(浏览器-服务器模型).而servlet就是对请求作出处理的组件,运行于支持Java的应用服务器中.Java Servlet 可以使用所有的 Java API,Java 能做的事情,Servlet 都能做。Servlet的作用通俗来讲servlet专门用来接收客户端的请求,专门接收客户端的请求数据,然后调用底层service处理数据并生成结果浏览器http请求------》tomcat服务器-------》到达servlet-----》执行doget,dopost方法----》返回数据客户端发送请求到服务器端服务器将请求信息发送至ServletServlet生成响应内容并将其传给服务器。服务器将响应返回给客户端。一、servlet里的三大作用域:request(请求):它的作用范围是一次请求和响应,是三个作用域中最小的。 session(会话):它的作用比request要大一点,一次会话过程中,它的作用域就一直存在,(默认是30分钟) servletcontext:它作用范围最大,作用于整个服务器中。(Application)1.Request request表示一个请求,只要发出一个请求就会创建一个request,它的作用域仅在 当前请求中有效,如果Web组件之间需要共享同一个请求中的数据,只能使用请求转发。a.用处:用于服务器间同一请求不同页面之间的参数传递用于表单的控件值传递b.常用方法:request.setAttribute(); request.getAttribute(); request.removeAttribute(); request.getParameter().2.Session 服务器为每个会话创建一个session对象,所以session中的数据可供当前会话中所有servlet共享。作用域:会话从用户打开浏览器开始,直到关闭浏览器才结束,一次会话期间只会创建一个session对象。a.用处:用于web开发中的登陆验证界面用于电商网站购物车功能b.常用方法:session.setAttribute(); session.getAttribute(); session.removeAttribute();在Servlet直接获取session:HttpSession session = request.getSession();JSP页面中直接使用(session属于JSP九大内置对象之一):<%session.serAttribute("name","admin")%> c.session被销毁session超时;浏览器关闭后,再也访问不到和该浏览器对应的session,它会在超时之后被销毁; 调用 session.invalidate();备注: session是服务器端对象,保存在服务器端,并且服务器可以将创建session后产生的 sessionid 通过一个 cookie 返回给客户端,以便下次验证。(session底层依赖于cookie)3.Application(ServletContext) ServletContext在 服务器启动时创建,服务器关闭时销毁。一个JavaWeb应用只创建一个ServletContext对象,所有的浏览器在访问服务器时都共享同一个ServletContext对象,ServletContext对象一般用于在多个浏览器间共享数据时使用。Servlet中获取Application对象:ServletContext serContext = this.getServletContext(); serContext .setAttribute("name", "kaixuan"); //设置一个值进去 serContext .getAttribute("name"); //获取键值对 备注:ServletContext同属于JSP九大内置对象之一,在JSP页面中可以直接使用4.作用域对象共享数据:1. 设置作用域中的共享数据 作用域对象.setAttribute(String name,Object value);2. 获取作用域中的共享数据 Object value = 作用域对象.getAttribute(String name);3. 删除作用域中的指定的共享数据 作用域对象.removeAttribute(String name);二、作用域总结生命周期request:只作用于当前一次请求session:一次会话(多次请求)application:项目的启动到结束作用范围requset:所有被请求转发的Servletsession:所有Servlet(当前浏览器)application:所有Servlet(所有浏览器都行)正确选择作用域request:跟当前操作功能相关session:跟用户信息相关,如登录信息、银行账号application:跟项目全局信息相关,如:京东配送地址如果选择的作用域不够准确,会造成内存浪费。测试作用域生命周期 验证测试过程:新建项目部署到Tomcat,浏览器访问,F5多次刷新,中途换浏览器访问测试结果:request的计数值始终是1,session的技术值当换了浏览器后从1开始,Application的计数值一直相加。
2022年11月02日
80 阅读
0 评论
2 点赞
2022-11-01
Java-Maven环境配置
配置Maven环境修改Maven仓库路径1.在D盘(个人根据自身情况而定)新建文件夹 repository,如下:2.备份settings.xml3.配置D:\server\maven\apache-maven-3.6.3\settings.xml文件,内容如下:<?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <pluginGroups /> <proxies /> <servers /> <!-- maven自动下载的jar包,会存放到该目录下 --> <localRepository>D:/server/maven/repository</localRepository> <mirrors> <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/repositories/central/</url> </mirror> <mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>central</mirrorOf> </mirror> <mirror> <id>central</id> <name>Maven Repository Switchboard</name> <url>http://repo1.maven.org/maven2/</url> <mirrorOf>central</mirrorOf> </mirror> <mirror> <id>repo2</id> <mirrorOf>central</mirrorOf> <name>Human Readable Name for this Mirror.</name> <url>http://repo2.maven.org/maven2/</url> </mirror> <mirror> <id>ibiblio</id> <mirrorOf>central</mirrorOf> <name>Human Readable Name for this Mirror.</name> <url>http://mirrors.ibiblio.org/pub/mirrors/maven2/</url> </mirror> <mirror> <id>jboss-public-repository-group</id> <mirrorOf>central</mirrorOf> <name>JBoss Public Repository Group</name> <url>http://repository.jboss.org/nexus/content/groups/public</url> </mirror> <mirror> <id>google-maven-central</id> <name>Google Maven Central</name> <url>https://maven-central.storage.googleapis.com </url> <mirrorOf>central</mirrorOf> </mirror> <!-- 中央仓库在中国的镜像 --> <mirror> <id>maven.net.cn</id> <name>oneof the central mirrors in china</name> <url>http://maven.net.cn/content/groups/public/</url> <mirrorOf>central</mirrorOf> </mirror> </mirrors> </settings>IntellIJ IDEA 中配置MavenIdea自带了apache maven,默认使用的是内置maven,会在Window用户目录下新建一个 .m2 的文件夹(一般在C盘)来存放下载的jar包。这也是为什么要调整存放路径的原因,随着开发项目越来越多,仓库会越来越大。所以我们需要配置全局settings,来调整一下配置,比如修改远程仓库地址,本地编译环境变量等。打开Settings,选择maven这里要注意,选择了自定义的maven后, 一定要勾选Override(覆盖)。同时保证 Local repository 项填写的路径 和 你勾选的配置文件中配置的路径是一致的。2.如果本地设置了MAVEN_OPTS 系统环境变量,这个步骤可以忽略。目的是确保maven输出的日志打印在控制台里不会乱码。同时也规定使用多少内存3.如果配置了本地apache-maven settings.xml 中的软件源,这步骤可以忽略。4.打开你的本地项目,选择右边栏的Maven,再点击加载标签,下载jar包依赖,最后再点击第二个图标来刷新本地文件目录。5.前往仓库目录看看,已经有jar包下载缓存到本地了。好了,大功告成,可以开始开心的撸代码了! :#(大佬)
2022年11月01日
118 阅读
0 评论
4 点赞
2022-11-01
JavaWeb服务器-Tomcat
Web服务器2.1 技术讲解ASP:微软:国内最早流行的就是ASP;在HTML中嵌入了VB的脚本,ASP + COM;在ASP开发中,基本一个页面都有几千行的业务代码,页面极其换乱维护成本高!C#llS在ASP开发中,基本一个页面<h1> <h1><h1> <h1> <h1> <h1> <h1> <% System.out.println(" /he11o") %> <hl> <h1> <h1>h1> <h1>php:PHP开发速度很快,功能很强大,跨平台,代码很简单(70%,WP)无法承载大访问量的情况(局限性)JSP/Servlet:B/S:浏览和服务器C/S:客户端和服务器sun公司主推的B/S架构基于Java语言的(所有的大公司,或者一些开源的组件,都是用ava写的)。可以承载三高问题带来的影响;语法像ASP,ASP-->ISR,加强市场强度;2.2 web服务器服务器是一种被动的操作,用来处理用户的一些请求和给用户一些响应信息;llS微软的:ASP...,Windows中自带的Tomcat面向百度编程Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为比较流行的Web 应用服务器。Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,对于一个Java初学web的人来说,它是最佳的选择Tomcat 实际上运行JSP 页面和Servlet。···工作3-5年之后,可以尝试手写Tomcat服务器;下载tomcat:安装 or 解压了解配置文件及目录结构这个东西的作用Tomcat详解3.1安装tomcattomcat官网:https://tomcat.apache.org/3.2Tomcat启动文件夹作用:启动关闭Tomcat测试访问:http://localhost:8080/可能遇到的问题:Java环境变量没有配置闪退问题:需要配置兼容性乱码问题:配置文件中设置3.3配置可以配置启动的端口号tomcat的默认端口号为:8080mysql: 3306http: 80https: 443<connector port="8081" protoco1="HTTP/1.1"" connectionTimeout="20000" redirectPort="8443”/>可以配置主机的名称默认的主机名为: localhost->127.0.0.1默认网站应用存放的位置为: webapps<Host name=""ww.Xiang.com" appBase="webapps" unpackwARs="true" autoDeploy="true">高难度面试题:请你谈谈网站是如何进行访问的!输入一个域名;回车检查本机的C:\Windows\System32\ldriversletclhosts配置文件下有没有这个域名映射;有:直接返回对应的ip地址,这个地址中,有我们需要访问的web程序,可以直接访问127.0.0.1 www.Xiang.com没有:去DNS服务器找,找到的话就返回,找不到就返回找不到;可以配置一下环境变量(可选性)3.4 发布一个web网站不会就先模仿将自己写的网站,放到服务器(Tomcat)中指定的web应用的文件夹(webapps)下,就可以访问了网站应该有的结构--webapps : Tomcat服务器的web目录 -ROOT -Xiangstudy :网站的目录名 - wEB-INF -classes : java程序 -lib: web应用所依赖的jar包 -web.xm1 :网站配置文件 - index.htm1默认的首页 - static -css -style.css-js -img -.....
2022年11月01日
120 阅读
0 评论
4 点赞
2022-11-01
JavaWeb概念
1. 基本概念1.1前言 web开发:web,网页的意思,例如:www.baidu.com静态webhtml,css提供给所有人看到的数据始终不会发生变化!动态web淘宝以及基本所有的网站提供给所有人看到的数据始终会发生变化,每个人在不同的时间,不同的地点看到的信息各不相同!技术栈:Servlet/jsp、asp、php在Java中,动态web资源开发的技术统称为JavaWeb1.2 web有应用程序web应用程序:可以提供浏览器访问的程序;a.html、b.htm.......多个web资源,这些web资源可以被外界访问,对外界提供服务;你们能访问到的任何一个页面或者资源,都存在于这个世界的某一个角落的计算机上。URL这个统一的web资源会被放在同一个文件夹下,web应用程序-->Tomcat:服务器。一个web应用由多部分组成(静态web,动态web)html,css,isjisp,servletJava程序jar包配置文件(Properties)web应用程序编写完毕后,若想提供给外界访问:需要一个服务器来统一管理;1.3 静态web.htm, .html,这些都是网页的后缀,如果服务器上一直存在这些东西,我们就可以直接进行读取。通络;静态web存在的缺点Web页面无法动态更新,所有用户看到都是同一个页面轮播图,点击特效:伪动态JavaScript[实际开发中,它用的最多]VBScript它无法和数据库交互(数据无法持久化,用户无法交互)1.4 动态web页面会动态展示:“Web的页面展示的效果因人而异";缺点:加入服务器的动态web资源出现了错误,我们需要重新编写我们的后台程序,重新发布停机维护优点:Web页面可以动态更新,所有用户看到都不是同一个页面。它可以与数据库交互(数据持久化:注册,商品信息,用户信息)
2022年11月01日
112 阅读
1 评论
7 点赞
2022-10-31
Java-捕获和抛出异常
Error和Exception什么是异常实际工作中,遇到的情况不可能是非常完美的。比如:你写的某个模块,用户输入不一定符合你的要求、你的程序要打开某个文件,这个文件可能不仔仕或省乂件信孔个对,小女次队效库的数据,数据可能是空的等。我们的程序再跑着,内存或硬盘可能满了,等等。软件程序在运行过程中,非常可能遇到刚刚提到的这些异常问题,我们叫异常,英文是:Exception,意思是例外。这些,例外情况,或首叫异吊,忑么L找1与住/e口年心理。而不至于程序崩溃。异常指程序运行中出现的不期而至的各种状况,如:文件找不到、网络连接失败、非法参数等。异常发生在程序运行期间,它影响了正常的程序执行流程。简单分类要理解Java异常处理是如何工作的,你需要掌握以下三种类型的异常:检查性异常:最具代表的检查性异常是用户错误或问题引起的异常,这是程序员无法预见的。例如要打开一个不存在文件时,一个异常就发生了,这些异常在编译时不能被简单地忽略。运行时异常:运行时异常是可能被程序员避免的异常。与检查性异常相反,运行时异常可以在编译时被忽略。错误ERROR:错误不是异常,而是脱离程序员控制的问题。错误在代码中通常被忽略。例如,当栈溢出时,一个错误就发生了,它们在编译也检查不到的。异常体系结构Java把异常当作对象来处理,并定义一个基类java.lang.Throwable作为所有异常的超类。在Java APl中已经定义了许多异常类,这些异常类分为两大类,错误Error和异常Exception。ErrorError类对象由Java虚拟机生成并抛出,大多数错误与代码编写者所执行的操作无关。Java虚拟机运行错误(Virtual MachineError),当JVM不再有继续执行操作所需的内存资源时,将出现 OutOfMemoryError。这些异常发生时,Java虚拟机(JVM一般会选择线程终止;还有发生在虚拟机试图执行应用时,如类定义错误(NoClassDefFoundError)、链接错误(LinkageError)。这些错误是不可查的,因为它们在应用程序的控制和处理能力之外,而且绝大多数是程序运行时不允许出现的状况。Exception在Exception分支中有一个重要的子类RuntimeException(运行时异常)ArrayIndexOutOfBoundsException(数组下标越界)NullPointerException(空指针异常)ArithmeticException(算术异常)MissingResourceException(丢失资源)ClassNotFoundException(找不到类)等异常,这些开吊定个他三升市出择捕获处理,也可以不处理。这些异常一般是由程序逻辑错误引起的,程序应该从逻辑角度尽可能避免这类异常的发生;Error和Exception的区别: Error通常是灾难性的致命的错误,是程序无法控制和处理的,当出现这些异常时,Java虚拟机(JVM)一般会选择终止线程;Exception通常情况下是可以被程序处理的,并且在程序中应该尽可能的去处理这些异常。捕获和抛出异常异常处理机制抛出异常捕获异常异常处理五个关键字try、catch、finally.throw.throws示例代码:public class Test { public static void main(String[] args) { int a=1; int b=0; try{ //try监控区 System.out.println(a/b); }catch (ArithmeticException e){ //catch 捕获异常 System.out.println("程序出现异常,变量b不能为0"); }finally { // finally 处理善后工作 System.out.println("finally"); } //finally 可以不要finaLly,假设I0,资源,关团 } }自定义异常使用Java内置的异常类可以描述在编程时出现的大部分异常情况。除此之外,用户还可以自定义异常。用户自定义异常类,只需继承Exception类即可。在程序中使用自定义异常类,大体可分为以下几个步骤:创建自定义异常类。在方法中通过throw关键字抛出异常对象。如果在当前抛出异常的方法中处理异常,可以使用try-catch语句捕获并处理;否则在方法的声明处通过throws关键字指明要抛出给方法调用者的异常,继续进行下一步操作。在出现异常方法的调用者中捕获并处理异常。实际应用中的经验总结处理运行时异常时,采用逻辑去合理规避同时辅助try-catch处理在多重catch块后面,可以加一个catch (Exception)来处理可能会被遗漏的异常对于不确定的代码,也可以加上 try-catch,处理潜在的异常尽量去处理异常,切忌只是简单地调用printStackTrace()去打印输出具体如何处理异常,要根据不同的业务需求和异常类型去决定尽量添加finally语句块去释放占用的资源
2022年10月31日
93 阅读
1 评论
4 点赞
1
...
3
4
5
6