Maven
Maven概念Maven 翻译为”专家”、”内行”,是 Apache 下的一个纯 Java 开发的开源项目。基于项目对象模型(缩写:POM)概念,Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。Maven 是一个项目管理工具,可以对 Java 项目进行构建、依赖管理。Maven 也可被用于构建和管理各种项目,例如 C#,Ruby,Scala 和其他语言编写的项目。Maven 曾是 Jakarta 项目的子项目,现为由 Apache 软件基金会主持的独立 Apache 项目。
领域
简化构建过程
提供统一的构建系统
提供优质的项目信息
鼓励更好的开发实践
仓库Maven 的本地仓库,在安装 Maven 后并不会创建,它是在第一次执行 maven 命令的时候才被创建。运行 Maven 的时候,Maven 所需要的任何构件都是直接从本地仓库获取的。如果本地仓库没有,它会首先尝试从远程仓库下载构件至本地仓库,然后再使用本地仓库的构件。
POM.xmlPOM 中可以指定以下配置:
项目依赖
插件
执行目标
项目构建 profile
项目版本
项目开发者列表
相关邮件列表 ...
Servlet
Servlet 概念Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为 来自 Web 浏览器或其他 HTTP 客户端的请求 和 HTTP 服务器上的数据库或应用程序 之间的中间层。(处理请求和响应)
Java Servlet 通常情况下与使用 CGI(Common Gateway Interface,公共网关接口)实现的程序可以达到异曲同工的效果。但是相比于 CGI,Servlet 有以下几点优势:
性能明显更好。Servlet 在 Web 服务器的地址空间内执行。这样它就没有必要再创建一个单独的进程来处理每个客户端请求。
Servlet 是独立于平台的,因为它们是用 Java 编写的。服务器上的 Java 安全管理器执行了一系列限制,以保护服务器计算机上的资源。因此,Servlet 是可信的。
Java 类库的全部功能对 Servlet 来说都是可用的。它可以通过 sockets 和 RMI 机制与 applets、数据库或其他软件进行交互。Servlet 架构
下图显示了 Servlet 在 Web 应用程序中的位置。
Servlet 任务Ser ...
SSM搭建
总结
修改web.xml配置文件的内容
添加mybatis、spring_mvc、spring_config的xml文件,放置在资源文件夹根目录,也可以在这里创建分别的目录
把mybatis的mapper.xml文件放置到资源文件夹中,不再与pojo同包
创建controller、pojo、service包,分别创建controller类、pojo对象和接口、service类(选:common:常量类,dto:返回对象类,utils:工具类)
依赖123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118<dependency> <gr ...
SpringMVC
概念MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。 通常模型对象负责在数据库中存取数据。
View(视图)是应用程序中处理数据显示的部分。 通常视图是依据模型数据创建的。
Controller(控制器)是应用程序中处理用户交互的部分。 通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。
MVC的目的是将Model和View的实现代码分离,从而使同一个程序可以使用不同的表现形式。对于同一批数据(Model),可以通过不同的View以不同的形式展示给用户。
配置Servlet3.0之前步骤
添加依赖
配置spring-config.xml
配置视图解析器
配置Disp ...
Layui
表单输入框需要设置name属性才能从data.field中提取
数据表格json数据需要设置code = 0 ,count = ?,且data需要为List类型修改静态修改data数据是在弹窗关闭后,所以提交后台数据需要使用获得的数据,不可以直接提交data
弹出层需要定义layer
123layui.use('layer', function(){ var layer = layui.layer;});
MarkDown文法
1:标题一级标题二级标题三级标题四级标题五级标题共六级
引用
加粗斜体
2:图片和链接
图片 ![图片信息](图片url)
链接 [链接标题](链接地址)
3:代码块12345678910requires_authorizationdef somefunc(param1='', param2=0): '''A docstring''' if param1 > param2: # interesting print 'Greater' return (param2 - param1 + 1) or Noneclass SomeClass: pass>>> message = '''interpreter... prompt'''
4:行内代码import java
5:表格
Item
Value
Qty
左对齐
右对齐
居中
Phone
12 US ...
MyBatis "#" 和 "$" 区别
1:概念Mybatis中sql语句共有三种执行方式
选项
说明
STATEMENT
直接操作sql,不进行预编译,获取数据:$–Statement
PREPARED
预处理,参数,进行预编译,获取数据:#–PreparedStatement
CALLABLE
执行存储过程—CallableStatement
MyBatis默认使用PREPARED方式,即#{}。
传入的参数在SQL中显示不同 使用${}方式传入的参数,mybatis不会对它进行特殊处理,而使用#{}传进来的参数,mybatis默认会将其当成字符串。可能在赋值给如id=#{id}和id=${id}看不出多大区别,但是作为表名或字段参数时可以明显看出, 例:
1234selec * from #{table};- 解析后为:select * from "test";select * from ${table};- 解析后为:select ...
HTTP协议
HTTP 协议概念HTTP 协议是 Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。HTTP 是一个基于 TCP/IP 通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。HTTP 是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于 1990 年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在 WWW 中使用的是 HTTP/1.0 的第六版,HTTP/1.1 的规范化工作正在进行之中,而且 HTTP-NG(Next Generation of HTTP)的建议已经提出。HTTP 协议工作于客户端-服务端架构为上。浏览器作为 HTTP 客户端通过 URL 向 HTTP 服务端即 WEB 服务器发送所有请求。Web 服务器根据接收到的请求后,向客户端发送响应信息。
HTTP 特性HTTP 协议构建于 TCP/IP 协议之上,是一个应用层协议,默认端口号是 80HTTP 是无连接无状态的
HTTP 报文请 ...
Java基础
本篇博客内容只包含极少内容,仅供参考
基本概念Java 之父:詹姆斯·高斯林
JDK 和 JRE 区别
JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境。
JRE:Java Runtime Environment 的简称,java 运行环境,为 java 的运行提供了所需环境。
JDK 包含 JRE 和编译器 javac,还包含很多 java 程序调试和分析的工具。JRE(Java 运行时环境)包含虚拟机但是不包含编译器。简单来说:如果需要运行 java 程序,只需安装 JRE ,如果需要编写 java 程序,则需要安装 JDK。
Java 安装与配置Java -version:检测 jdk 是否安装javac:检测环境变量环境变量:
新建系统变量:
JAVA_HOME
jdk 路径,例:C:\Java\jdk1.8.0_241
系统变量 path 添加:
%JAVA_HOME%/bin
%JAVA_HOME%/jre/bin
Java 语言的特性
简单性
面向对象
分布式
健壮性
安全性
体系结构 ...
SpringCore
依赖注入和控制反转问题紧密耦合的代码难以测试,难以复用,难以理解,但是耦合是必须的
解决通过DI,对象的依赖关系将由系统中负责协调各对象的第三方插件在创建对象时设定。对象无需自行创建或管理他们的依赖关系(IOC和DI是同一个概念的不同角度描述)
来自IoC 之 2.1 IoC基础 ——跟我学Spring3
IOCIOC (Inversion of Control),即“控制反转”,不是什么技术,而是一种设计思想。在Java开发中,IOC意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。
谁控制谁,控制什么:传统Java SE程序设计,我们直接在对象内部通过new进行创建对象,是程序主动去创建依赖对象;而IOC是有专门一个容器来创建这些对象,即由IOC容器来控制对象的创建;谁控制谁?当然是IOC容器控制了对象;控制什么?那就是主要控制了外部资源获取(不只是对象包括文件等)。
为何是反转,哪些方面反转了:有反转就有正转,传统应用程序是由我们自己在对象中主动控制去直接获取依赖对象,也就是正转;而反转则是由容器来帮忙创建及注入依赖对象;为何是反转?因为由容器帮我们查 ...