springmvc框架入门
[toc]
SpringMvcSpring MVC 是目前主流的实现 MVC 设计模式的企业级开发框架,Spring 框架的一个子模块,无需整合,开发起来更加便捷。
1.SpringMvc核心思想1.1 Spring MVC 的核心组件
DispatcherServlet:前置控制器,是整个流程控制的核心,控制其他组件的执行,进行统一调度,降低组件之间的耦合性,相当于总指挥。
Handler:处理器,完成具体的业务逻辑,相当于 Servlet 或 Action。
HandlerMapping:DispatcherServlet 接收到请求之后,通过 HandlerMapping 将不同的请求映射到不同的 Handler。
HandlerInterceptor:处理器拦截器,是一个接口,如果需要完成一些拦截处理,可以实现该接口。
HandlerExecutionChain:处理器执行链,包括两部分内容:Handler 和 HandlerInterceptor(系统会有一个默认的 HandlerInterceptor,如果需要额外设置拦截,可以添加拦截器)。
HandlerAdapter: ...
spring2 框架入门
Spring
IoC(控制反转)/ DI(依赖注入)
AOP(面向切面编程)
1.创建IOC工程1.1导入依赖12345678910<dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.0.11.RELEASE</version></dependency><dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.24</version></dependency>
IOC框架只需要context依赖就够了
1.2创建实体类12345public class Studen ...
java 注释与反射
[toc]
注解1.Annotation
注解不是程序本身,但是可以对程序做出解释
注解可以被其他程序(比如:编译器)读取
2.元注解元注解的作用就是负责注解其他注解,Java定义了4个标准的meta-annotation:类型,他们被用来提供对其他annotation类型作说明
Target:描述注解的使用位置
Retention:描述注解的生命周期,表示在什么级别保存该注解的信息 (3个取值:SOURCE<CLASS<RUNTIME)
Document:说明该注解可以被生成在Javadoc中
Inherited:说明子类可以继承父类中的该注解
3.自定义注解使用@interface自定义注解时,自动继承了java.lang.annotation.Annotation接口分析:
@interface用来声明一个注解,格式:public@interface注解名{定义内容}
其中的每一个方法实际上是声明了一个配置参数
方法的名称就是参数的名称,
返回值类型就是参数的类型(返回值 ...
mybatis入门
MyBatisMyBatis重要核心步骤:省去了建表,写对应的实体类(可以用lombok组件)
1234567//对应实体类public class Account { private long id; private String username; private String password; private int age;}
1.创建 MyBatis 的配置⽂文件 config.xml(一般是在resources下)1234567891011121314151617181920<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><!--约束头文件--><conf ...
javaweb
[toc]
JavaWeb1.编写Servlet
重要补充:request是从服务器获取数据,response是从服务器向浏览器返回数据
通过配置的maven新建webapp模板工程并且配置pom.xml文件(是mvn的核心文件)来导入Servlet的依赖
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency>
1234567- 创建一个类继承HttpServlet,并重写Service方法 - ```java public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException { res.getWri ...
jdbc连接
jdbc的连接过程1.加载JDBC驱动程序:2.提供JDBC连接的URL3.创建数据库的连接4.创建一个Statement5.执行SQL语句6.处理结果7.关闭JDBC对象具体实现:1.加载JDBC驱动程序:
123//加载MySql的驱动类 Class.forName("com.mysql.jdbc.Driver") ; //成功加载后,会将Driver类的实例注册到DriverManager类中。
提供JDBC连接的URL
注意事项:
连接URL定义了连接数据库时的协议、子协议、数据源标识。
书写形式:协议:子协议:数据源标识
协议:在JDBC中总是以jdbc开始
子协议:是桥连接的驱动程序或是数据库管理系统名称。
数据源标识:标记找到数据库来源的地址与连接端口。
12345//利用mysql连接:jdbc:mysql: //localhost:3306/test?useUnicode=true&characterEncoding=gbk ; // useUnicode=true:表示 ...
java IO流
IO流
IO是指Input/Output,即输入和输出。
字节输入流(常用)Inputstream是输入流的抽象父类,类里面主要就是read方法与close方法,需要去找子类的实例,实现其方法;
public static void main(String[] args) throws IOException {
File file = new File("D:\\project\\java\\execrise\\project 01\\project0.1\\receive.jpg");//传一个路径
InputStream is = new FileInputStream(file);//构建流
int read = is.read();//按字节来读入流
System.out.println(read);//结果:255(ascil码)
is.close();//关闭流
}
//read方法如果没有读到就返回-1
123456789101112- ```java //通过while循环来改善每个字节的读 ...
网络编程
网路编程javaweb:网页编程 B/S网络编程:TCP/IP C/S
1.如何实现网络通信
通信双方的地址
ip
端口号
规则:网络通信协议
TCP\IP参考模型
2.IP
唯一定位一台网络上计算机
127.0.0.1:本机localhost
ip地址:InetAddress类
InetAddress inetAddress = InetAddress.getByName("www.baidu.com");//因为没有构造方法,只能通过调用他的静态方法直接获取一个他的属性
inetAddress.getHostAddress();//ip
inetAddress.getHostName();//域名
12345678910111213141516171819202122232425262728### 3. 端口- 端口表示计算机上的一个程序的进程; - 不同的进程有不同的端口号!用来区分软件! - 端口分类: - 公有端口0~1023 - `HTTP`:80 - `HTTPS`:443 - `FTP` ...
java 多线程
[toc]
多线程进程
在计算机中,我们把一个任务称为一个进程,浏览器就是一个进程,视频播放器是另一个进程,类似的,音乐播放器和Word都是进程。
进程和线程的关系:一个进程可以包含一个或多个线程,但至少会有一个线程。
创建一个线程
方法一:继承Thread.类,重写run()方法,调用start开启线程
public class Demo04 extends Thread{//继承Thread类
@Override
public void run() {//重写run方法
for (int i = 0; i < 5; i++) {
System.out.println("线程里的方法:"+i);
}
}
public static void main(String[] args) {
Demo04 demo04 = new Demo04();
demo04.start() ...













