JAVA:框架,层级,文件,包
框架
JAVA应用的不同方式下的框架
JAVAEE
JavaEE是一套使用Java进行企业级Web应用开发的大家一致遵循的工业标准(或者框架)。JavaEE 号称有十三种核心技术。它们分别是:JDBC、JNDI、EJB、RMI、Servlet、JSP、XML、JMS、Java IDL、JTS、JTA、JavaMail和JAF。
使用多层分布式的应用模型,这个多层通常通过三层或四层来实现:
1、客户层,运行在客户计算机上的组件。
2、Web 层,运行在JAVAEE服务器上的组件。
3、业务层,同样是运行在JAVAEE服务器上的组件。
4、企业信息系统层(EIS),是指运行在EIS服务器上的软件系统。
JavaWeb
Java Web 其实就是一个技术的总和,把Web看成一个容器而已主要使用JavaEE技术来实现.在加上各种中间件。整个javaWeb阶段的内容通过实际的案例贯穿学习, 所涉及到的技术知识点会在案例中根据不同的需求引入。首先了解javaWEB的整个技术体系,掌握常用的技术知识点。
框架:
Maven
Maven是一个项目管理工具.它包含了一个项目对象模型、一组标准集合、一个项目生命周期、一个依赖管理系统和用来运行定义在生命周期阶段中插件目标的逻辑。
解决:依赖管理、编译、测试、发布
加入了pom.xml文件,对项目需要的jar包进行管理以及引用。
同时可以向Maven仓库(本地仓库,中央仓库)内申请引入jar包,加入main(java,resource)和test(java,source)概念。
依赖:
<dependency>
<groupId>cn.missbe.web.search</groupId>
<artifactId>resource-search</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
</dependency>
groupId:所需Jar包的项目名
artifactId:所需Jar包的模块名
version:所需Jar包的版本号
MyBatis
MyBatis是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。免除了JDBC 代码以及设置参数和获取结果集的工作。通过XML或注解来配置和映射原始类型、接口和 Java POJO(普通老式Java 对象)为数据库中的记录。帮助程序员将数据存入到数据库中。较JDBC便捷了。简化、框架、自动化。
优点:
灵活
sql和代码的分离,提高了可维护性。
提供映射标签,支持对象与数据库的orm字段关系映射
提供对象关系映射标签,支持对象关系组建维护
提供xml标签,支持编写动态sql。
sql语句编写在对应的xml文件中
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!--namespace绑定一个对应的Mapper接口-->
<mapper namespace="com.newer.dao.UserDao">
<select id="getUserList" resultType="com.newer.pojo.User">
select * from mybatis.user
</select>
</mapper>
SpringMVC
SpringMVC是一种web层mvc框架,用于替代servlet。用来处理请求及响应。
SpringMVC的核心就是DispatcherServlet,DispatcherServlet实质也是一个HttpServlet。DispatcherSevlet负责将请求分发,所有的请求都有经过它来统一分发。将请求消息(如Json、xml等数据)转换成一个对象,将对象转换为指定的响应信息。
SpringMVC请求处理的流程:
Spring
Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器(框架)。
Spring是一个开源容器框架,可以接管web层,业务层,dao层,持久层的组件,并且可以配置各种bean,和维护bean与bean之间的关系。其核心就是控制反转(IOC),和面向切面(AOP),简单的说就是一个分层的轻量级开源框架。
SpringBoot
SpringCloud
层级概念
JVM
JVM:Java Virtual Machine是Java虚拟机,Java程序需要运行在虚拟机上,不同的平台有自己的虚拟机,因此Java语言可以实现跨平台。
JRE
JRE:Java Runtime Environment包括Java虚拟机和Java程序所需的核心类库等。核心类库主要是java.lang包:包含了运行Java程序必不可少的系统类。如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。
JDK
JDK:Java Development Kit是提供给Java开发人员使用的,其中包含了Java的开发工具,也包括了JRE。所以安装了JDK,就无需再单独安装JRE了。其中的开发工具:编译工具(javac.exe),打包工具(jar.exe)等
Tomcat
Tomcat简单的说就是一个运行JAVA的网络服务器,底层是Socket的一个程序,它也是JSP和Serlvet的一个容器。运行Tomcat需要JDK的支持。Tomcat就是提供能够让别人访问自己写的页面的一个程序。
文件类
servlet
Servlet是遵循Servlet开发的java类,仅仅提供静态页面的功能。由服务器调用、运行。我们编写java程序想要在网上实现 聊天、发帖、这样一些的交互功能,普通的java技术是非常难完成的。
举例:
out.write("\r\n");
out.write("\r\n");
out.write("<html>\r\n");
out.write("<head>\r\n");
out.write(" <title>简单使用JSP</title>\r\n");
out.write("</head>\r\n");
out.write("<body>\r\n");
jsp
JSP,即java服务器页面,实现了页面的动态分布。基于文本的程序,特点是HTML和Java代码共同存在!JSP可以使用特殊的JSP标记在HTML网页中插入Java代码,这些标记通常以<%开头,以%>结尾。 JSP是为了简化Servlet的工作出现的替代品,Servlet输出HTML非常困难,JSP就是替代Servlet输出HTML的。
jsp和servlet之间的区别:jsp就是在html里面写java代码,servlet就是在java里面写html代码。其实jsp经过容器解释之后就是servlet.
举例:
<form action="/docuCollect/User_CheckLog" method="post">
<h2 align="center">任务提交记录</h2>
<table align="center" border="1">
<tr>
<td> 用户操作</td>
<td> 用户操作时间</td>
</tr>
<c:forEach items="${ log_user_map }" var="user_log">
<tr>
<td> ${ user_log.value.log_content } </td>
<td> ${ user_log.value.add_time } </td>
<!-- <td><a href="/docuCollect/Admin_AllTask.jsp">删除任务</a></td> -->
</tr>
</c:forEach>
</table>
</form>
html
HTML(Hypertext Markup Language)文本标记语言,由各种标签组成,用来制作网页,告诉浏览器该如何显示页面。它是静态页面,和JavaScript一样解释性语言,直接在浏览器中就可以打开不需要编译器。
制作网页,控制网页和内容的显示
插入图片、音乐、视频、动画等多媒体 phs
通过链接来检索信息
使用表单获取用户的信息,实现交互 graphs
jsp和servlet之间的区别:
1.HTML能直接在浏览器打开,jsp只能发布到Tomact等服务器上才能打开 。
2.HTML页面是静态页面可以直接运行,JSP页面是动态页面需要转换成servlet。
3.他们的表头不同,这个是JSP的头“ <%@ page language="java" import="java.util.*" pageEncoding="gbk"%>”在表头中有编码格式和倒入包等。
4.也是很好区分的在jsp中用<%%>就可以写Java代码了,而html没有<%%>。
包类
.java
编写的java代码文件。
.class
java代码编译后的文件。
.jar
类包。
.war
项目包,其中不仅包含类,还包含各种配置文件,图片等资源。