JAVA WEB基础知识
文章平均质量分 89
LIUXUN1993728
这个作者很懒,什么都没留下…
展开
-
JAVAWEB开发之工作流详解(一)——Activiti的环境搭建、插件安装、核心API
工作流的概念工作流(Workflow),就是“业务过程的部分或整体在计算机应用环境下的自动化”,它主要解决的是“使在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标,或者促使此目标的实现”。工作流管理系统(Workflow Management System, WfMS)是一个软件系统,它完成工作量的定义和管理,并按照在系统中预先定义好的工作原创 2017-08-05 11:54:17 · 14852 阅读 · 3 评论 -
JAVAWEB开发之——Linux命令总结
/*一、文件系统的管理tips:输入命令的时候要常用tab键来补全ls 查看目录信息 ( ls / ) ls -l 等价于 llpwd 查看当前所处的路径 cd 切换目录 (cd /) ,如果不带参数则切换到用户主目录 ~mkdir 创建文件夹mkdir -p a/b/c 如果要创建的文件夹的父目录不存在,则自动创建rmdir 删除空文原创 2017-06-27 21:31:04 · 1398 阅读 · 0 评论 -
JAVAWEB开发之redis学习(二)——string相关的操作命令
一、概述字符串类型是redis中最为基础的数据存储类型,它在redis中是二进制安全的,这就意味着该类型可以接收任何格式的数据,如JPEG图像数据或json对象描述信息等。在redis中字符串类型的value最多可以容纳的数据长度为512M。二、相关命令列表命令原型 时间复杂度 命令描述 返回值APPEND key value O(1) 如果该Key已经原创 2017-07-06 11:45:14 · 1161 阅读 · 0 评论 -
JAVAWEB开发之redis学习(一)——redis重点介绍、redis应用场景以及redis的安装运行
redis学习目标1.redis特点及安装2.redis键值操作3.redis数据类型[string, link,set,orderset,hash]4.事务5.消息订阅6.持久化7.集群8.运维redis简介redis是开源BSD许可高级的key-value存储系统(NoSQL)可以用来存储字符串,哈希结构,链表,集合,因此,常用来提供数据结构服务。原创 2017-07-04 18:22:42 · 5130 阅读 · 1 评论 -
JAVAWEB开发之SpringMVC详解(二)——高级开发、数据回显、参数绑定集合、图片上传、json交互、validation校验、异常处理、RESTful支持、拦截器
知识回顾springmvc框架用户请求url到DispatcherServlet前端控制器,相当于中央调度器,降低系统各组件之间的耦合度。DispatcherServlet前端控制器通过HandlerMapping处理器映射器根据url找到Handler。DispatcherServlet前端控制器通过HandlerAdapter处理器适配器执行Handler。Dispatch原创 2017-06-25 21:29:32 · 4227 阅读 · 1 评论 -
JAVAWEB开发之权限管理(一)——权限管理详解(权限管理原理以及方案)、不使用权限框架的原始授权方式详解
知识清单1.了解基于资源的权限管理方式2. 掌握权限数据模型3. 掌握基于url的权限管理(不使用Shiro权限框架的情况下实现权限管理)4. shiro实现用户认证5. shiro实现用户授权6. shiro与企业web项目整合开发的方法权限管理原理知识什么是权限管理只要有用户参与的系统一般都要有权限管理,权限管理实现对用户访问系统的控制。按照安全规则或安全策原创 2017-07-13 13:35:18 · 98903 阅读 · 36 评论 -
JAVAWEB开发之mybatis详解(二)——高级映射、查询缓存、mybatis与Spring整合以及懒加载的配置和逆向工程
mybatis基础知识回顾1. mybatis是什么?mybatis是一个持久层框架,是Apache下的开源项目,前身是ibatis,是一个不完全的ORM框架,mybatis提供输入和输出的映射,需要程序员自己手动写SQL语句,mybatis重点对SQL语句进行灵活操作。适用场合:需求变化频繁,数据模型不固定的项目,例如:互联网项目。2.mybatis架构:Sq原创 2017-06-13 09:46:27 · 4587 阅读 · 1 评论 -
JAVAWEB开发之——Linux命令实战、虚拟机和centos的安装以及联网、常用命令、vi编辑以及软件的安装、sftp的使用
Linux简介Linux是一种自由和开放源码的操作系统,存放着许多不同的Linux版本,但他们都使用了Linux内核。Linux可安装在各种计算机硬件中比如、手机、平板电脑、路由器、台式计算机中。Linux出现于1991年,是由芬兰赫尔辛基大学学生Linus Torvalds和后来加入的众多爱好者共同开发完成美国《时代周刊》如此评价他:有些人生来就具有统率百万人原创 2017-07-01 15:28:21 · 1869 阅读 · 0 评论 -
JAVAWEB开发之SpringMVC详解(一)——SpringMVC的框架原理、架构简介、与mybatis整合和注解方式的使用、
知识清单基础知识清单SpringMVC框架(重点)MVC在B/S系统中的应用方式SpringMVC框架原理(DispatcherServlet前端控制器、处理器映射器、处理器适配器、视图解析器)SpringMVC入门程序需求:商品列表查询常用的处理器映射器,处理器适配器注解的处理器映射器,处理器适配器用于注解开发(重点)注解开发基础常用注原创 2017-06-20 17:31:56 · 6289 阅读 · 1 评论 -
JAVAWEB开发之mybatis详解(一)——mybatis的入门(实现增删改查操作)、自定义别名、抽取代码块以及动态SQL的使用
mybatis简介 mybatis是一个Java持久层框架,Java中操作关系型数据库使用的是jdbc,mybatis是对jdbc的封装。mybatis的入门需要掌握以下几点:1、使用jdbc程序使用原生态的jdbc进行开发存在很多弊端,优点是执行效率高,mybatis弥补了jdbc的缺陷。2、mybatis的架构(重点)。3、mybatis的入门程序(重点)。 实原创 2017-06-05 23:21:14 · 4496 阅读 · 6 评论 -
JAVAWEB开发之Hibernate详解(二)——Hibernate的持久化类状态与转换、以及一级缓存详解、关联关系的映射(一对多、多对多、级联)
持久化对象的状态 Hibernate持久化对象存在三种状态:瞬时态 transient:(临时态) 不存在持久化标识OID,尚未与Hibernate Session关联对象,被认为是瞬时状态,失去引用将被JVM回收。特点:无持久化标识OID,未与Session关联。持久态 persistent:存在持久化标识OID,与当前Session有关联,并且相关联的Session没有关闭,并原创 2017-04-03 23:57:30 · 2719 阅读 · 3 评论 -
JAVAWEB开发之Spring详解之——AOP底层剖析(基于JDK和cglib)、Spring中的AOP以及基于AspectJ的AOP实现、Spring的JDBCTemplate详解
AOP概述 什么是AOP?AOP—Aspect Oriented Programming 面向切面编程。AOP采取横向抽取机制,取代了传统纵向继承体系重复性代码(性能监视、事务管理、安全检查、缓存)。Spring AOP使用后纯Java实现,不需要专门的编译工程和类加载器,在运行期间通过代理方式向目标类组织增强代码。AspectJ是一个基于Java语言的AOP框架,Spring2.原创 2017-04-27 12:42:07 · 1343 阅读 · 0 评论 -
JAVAWEB开发之Maven的入门详解——Maven的安装以及项目的结构和Maven的使用以及私服的搭建与配置
什么是Maven? 翻译为专家,内行。Maven是跨平台的项目管理工具。主要服务于基于Java平台的项目构建,项目管理和项目信息管理。那么怎么样才算是理想的项目构建呢?理想的项目构建就是必须具备高度自动化,跨平台,可重用的组件,标准化这些特性。什么是依赖?为什么要进行依赖管理?- 所谓的依赖就是自动下载。进行依赖管理主要是为了统一的对这些依赖进行管理。都有哪些项目信息?-项目名原创 2017-05-13 18:19:41 · 4766 阅读 · 0 评论 -
JAVAWEB开发之Spring详解之——Spring的入门以及IOC容器装配Bean(xml和注解的方式)、Spring整合web开发、整合Junit4测试
Spring框架学习路线Spring的IOCSpring的AOP,AspectJSpring的事务管理,三大框架的整合Spring框架概述什么是Spring? Spring是分层的JavaSE/EE full-stack(一站式)轻量级开源框架。所谓分层:SUN提供的EE的三层结构:web层、业务层、数据访问层(也称持久层,集成层)。Struts2是we原创 2017-04-22 11:11:18 · 2913 阅读 · 1 评论 -
JavaWeb开发之SSH框架整合——Struts2+Spring3+Hibernate3三大框架的整合
Struts2+Spring3+Hibernate3导包Struts2导包与配置Struts2/apps/struts2-blank.war/WEB-INF/lib/*.jar如下图所示:导入与Spring整合的jar包struts2-spring-plugin-2.3.15.1.jar 用于Struts2整合Springstruts2-json-plugin原创 2017-05-03 21:14:28 · 2765 阅读 · 0 评论 -
JAVAWEB开发之redis学习(三)——list相关的操作命令
一、概述在redis中,List类型是按照插入顺序排序的字符串链表。和数据结构中的普通链表一样,我们可以在其头部(left)和尾部(right)添加新的元素。在插入时,如果该键并不存在,redis将为该键创建一个新的链表。与此相反,如果该链表中的所有元素都被移除,那么该键也将会被从数据库中移除。List中可以包含的最大元素数量是4*1024^3-1=4294967295。从元素插入和删除的效率原创 2017-07-06 18:42:21 · 1072 阅读 · 3 评论 -
JAVAWEB开发之redis学习(四)——Set集合相关的操作命令
一、概述在redis中,我们可以将Set类型看做没有排序的字符串集合,和List类型一样,我们也可以在该类型的数据值上执行添加、删除或判断某一元素是否存在等操作。需要说明的是,这些操作的时间复杂度为O(1),即常量时间完成此操作。Set可包含最大数据量是4294967295。和List类型不同的是,Set集合中不允许出现重复的元素,这一点和C++标准库中的Set容器是完全相同的。换句话说,如果原创 2017-07-06 22:12:14 · 1023 阅读 · 1 评论 -
JAVAWEB开发之Solr的入门——Solr的简介以及简单配置和使用、solrJ的使用、Solr数据同步插件
Solr简介Solr是采用Java开发,基于Lucene的全文检索服务器,同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎。Solr是一个独立的企业级搜索应用服务器,它对外提供类似于原创 2017-07-26 16:14:17 · 10341 阅读 · 4 评论 -
JAVAWEB开发之工作流详解(二)——Activiti核心API的使用(流程定义和流程实例的管理、流程变量、监听器...)以及与Spring的集成
管理流程定义设计流程定义文档bpmn文件设置方式可以直接使用插件图形化界面进行设置为某任务节点指定任务执行者保存后的BPMN文件可以使用XML编辑器打开BPMN 2.0根节点是definitions节点。 这个元素中,可以定义多个流程定义(不过我们建议每个文件只包含一个流程定义, 可以简化开发过程中的维护难度)。 一个空的流程原创 2017-08-09 15:09:07 · 6550 阅读 · 1 评论 -
JAVAWEB开发之权限管理(三)——shiro与企业项目整合开发(基于Spring)
原理回顾什么是权限管理?权限管理是系统的安全范畴,要求必须是合法的用户才可以访问系统(用户认证),且必须具有该 资源的访问权限才可以访问该 资源(授权)。认证:对用户合法身份的校验,要求必须是合法的用户才可以访问系统。授权:访问控制,必须具有该 资源的访问权限才可以访问该 资源。权限模型:标准权限数据模型包括 :用户、角色、权限(包括资源和权限)、用户角色关系、角色权限关系。原创 2017-07-18 22:46:37 · 9292 阅读 · 6 评论 -
JAVAWEB开发之redis学习(十三)——redis服务器的虚拟内存和内存优化
Redis虚拟内存一、虚拟内存简介:和大多NoSQL数据库一样,Redis同样遵循了Key/Value数据存储模型。在有些情况下,Redis会将Keys/Values保存在内存中以提高数据查询和数据修改的效率,然而这样的做法并非总是很好的选择。鉴于此,我们可以将之进一步优化,即尽量在内存中只保留Keys的数据,这样可以保证数据检索的效率,而Values数据在很少使用的时候则可以被换出到磁盘原创 2017-07-08 13:50:41 · 1182 阅读 · 0 评论 -
JAVAWEB开发之redis学习(十二)——redis服务器管理
一、概述:Redis在设计之初就被定义为长时间不间断运行的服务进程,因此大多数系统配置参数都可以在不重新启动进程的情况下立即生效。即便是将当前的持久化模式从AOF切换到RDB也无需重启。在Redis中,提供了一组和服务器管理相关的命令,其中就包含和参数设置有关的CONFIG SET/GET command。二、相关命令列表:命令原型 时间复杂度 命令描述 返回值CONFIG原创 2017-07-08 13:42:47 · 898 阅读 · 0 评论 -
JAVAWEB开发之redis学习(十一)——redis运维相关(主从复制以及AOF、RDB的配置、后台运维命令)
/*redis持久化,两种方式1、rdb快照方式2、aof日志方式----------rdb快照------------save 900 1save 300 10save 60 10000stop-writes-on-bgsave-error yes #当进行异步持久化操作时有错误发生,停止持久化操作rdbcompression yes #压缩RDB文件rdbche原创 2017-07-08 13:25:46 · 1005 阅读 · 0 评论 -
JAVAWEB开发之redis学习(十)——redis持久化存储
一、Redis提供了哪些持久化机制:1). RDB持久化:该机制是指在指定的时间间隔内将内存中的数据集快照写入磁盘。 2). AOF持久化:该机制将以日志的形式记录服务器所处理的每一个写操作,在Redis服务器启动之初会读取该文件来重新构建数据库,以保证启动后数据库中的数据是完整的。3). 无持久化:我们可以通过配置的方式禁用Redis服务器的持久化功能,这样我们就可原创 2017-07-08 11:06:33 · 2024 阅读 · 0 评论 -
JAVAWEB开发之redis学习(九)——redis主从复制入门及原理
一、Redis的Replication下面的列表清楚的解释了Redis Replication的特点和优势。1). 同一个Master可以同步多个Slaves。2). Slave同样可以接受其它Slaves的连接和同步请求,这样可以有效的分载Master的同步压力。因此我们可以将Redis的Replication架构视为图结构。3). Master Server是以非阻塞的方式为S原创 2017-07-07 21:58:02 · 1085 阅读 · 0 评论 -
JAVAWEB开发之redis学习(八)——redis事务
一、概述:和众多其它数据库一样,Redis作为NoSQL数据库也同样提供了事务机制。在Redis中,MULTI/EXEC/DISCARD/WATCH这四个命令是我们实现事务的基石。相信对有关系型数据库开发经验的开发者而言这一概念并不陌生,即便如此,我们还是会简要的列出Redis中事务的实现特征:1). 在事务中的所有命令都将会被串行化的顺序执行,事务执行期间,Redis不会再为其它客户端的原创 2017-07-07 21:09:06 · 865 阅读 · 0 评论 -
JAVAWEB开发之redis学习(七)——key相关的通用操作
一、概述在该系列的前几篇博客中,主要讲述的是与Redis数据类型相关的命令,如String、List、Set、Hashes和Sorted-Set。这些命令都具有一个共同点,即所有的操作都是针对与Key关联的Value的。而该篇博客将主要讲述与Key相关的Redis命令。学习这些命令对于学习Redis是非常重要的基础,也是能够充分挖掘Redis潜力的利器。在该篇博客中,我们将一如既往的给出所有相原创 2017-07-07 20:36:28 · 967 阅读 · 0 评论 -
JAVAWEB开发之redis学习(六)——HashSet集合相关的操作命令
一、概述我们可以将Redis中的Hashes类型看成具有String Key和String Value的map容器。所以该类型非常适合存储键值对象的信息。如Username、Password和Age等。如果Hash包含很少的字段,那么该类型的数据也将占用很少的磁盘空间。每一个Hash都可以存储4294967295个键值对。二、相关命令列表格式:命令原型 时间复杂度+命令描述原创 2017-07-07 17:33:23 · 1817 阅读 · 0 评论 -
JAVAWEB开发之redis学习(五)——SortedSet集合相关的操作命令
一、概述Sorted-Sets和Sets类型极为相似,它们都是字符串集合,都不允许重复的成员出现在同一个Set中。它们之间的主要差别是Sorted-Sets中每一个成员都有一个分数(score)与之关联,Redis正是通过分数来为集合中的成员进行从小到大的排序。然而需要额外指出的是,尽管Sorted-Set中成员必须是唯一的,但是分数(score)却是可以重复的。在Sorted-Set中删除或原创 2017-07-07 14:07:58 · 972 阅读 · 0 评论 -
JAVAWEB开发之权限管理(二)——shiro入门详解以及使用方法、shiro认证与shiro授权
shiro介绍什么是shiroshiro是Apache的一个开源框架,它将软件系统的安全认证相关的功能抽取出来,实现用户身份认证,权限授权、加密、会话管理等功能,组成了一个通用的安全认证框架。它可以实现如下的功能:1.验证用户2.对用户执行访问控制,如:判断用户是否具有角色admin,判断用户是否拥有访问的资源权限。3.在任何环境下使用SessionAPI。例如C/S程序4原创 2017-07-16 01:53:40 · 17054 阅读 · 8 评论 -
JAVAWEB开发之Spring详解之——Spring事务管理详解(四种事务管理方式)
事务:事务:是逻辑上一组操作,要么全都成功,要么全都失败。事务特性:ACID原子性: 事务不可分割。一致性: 事务执行的前后,数据完整性保持一致。隔离性: 一个事务执行的时候,不应该受到其他事务的干扰。持久性: 一旦结束,数据就永久的保存到了数据库。如果不考虑隔离性,会出现以下问题:脏读: 一个事务读到了另一个事务未提交的数据。不可重复读: 一个事务读到了另原创 2017-05-01 11:59:24 · 973 阅读 · 0 评论 -
JAVAWEB开发之Hibernate详解(一)——Hibernate的框架概述、开发流程、CURD操作和核心配置与API以及Hibernate日志的使用
Hibernate框架概述什么是Hibernate为何要学习HibernateHibernate版本Hibernate日志记录Log4J技术Hibernate快速入门第一步下载Hibernate3x的开发包3610第二步Hibernate框架目录结构第三步创建一个工程Java工程第四步搭建环境创建一个customer表与对应的持久化类第五步在Customerclass所在的目录创建映射文件第六步配置JDBC连接数据库基本属性第七步编程操作hibernate框架Hibernate的原创 2017-03-26 13:58:08 · 8421 阅读 · 0 评论 -
JAVAWEB开发之数据库简介、MySQL的安装与卸载(处理中文乱码)、以及MySQL语言(DDL、DML、DCL、DQL)的详解和使用
SQL:Structured query language 即 结构化查询语句、数据库简介什么是数据库? 数据库就是一个文件系统,但是访问的时候需要使用标准SQL语句来访问数据。关系型数据库:存储的都是实体与实体之间的关系。可以通过ER模型图来描述之间的关系常见的数据库:Oracle:甲骨文公司的数据库产品,大型的收费的数据库。SQLServer:微软公原创 2017-02-13 14:04:48 · 973 阅读 · 0 评论 -
JAVAWEB开发之JSP、EL、及会话技术(Cookie和Session)的使用详解
Servlet的缺点开发人员要十分熟悉JAVA不利于页面调试和维护(修改,重新编译)很难利用网页设计工具进行页面设计(HTML内容导入到servlet中,用PrintWriter的对象进行输出)JSP简介JSP(Java Server Pages) 与Java Servlet一样,是在服务器端执行的,不同的是JSP先由服务器编译部署成Servlet执行。JSP技术的企业最佳原创 2017-01-20 22:34:53 · 4562 阅读 · 0 评论 -
JAVAWEB开发之事务详解(mysql与JDBC下使用方法、事务的特性、锁机制)和连接池的详细使用(dbcp以c3p0)
事务简介 事务的概念:事务指逻辑上的一组操作,组成这组操作的各个单元,要么全部成功,要么全部不成功在开发中,有事务的存在,可以保证数据的完整性。注意:数据库默认事务是自动提交的,也就是发一条SQL 就执行一条。如果想多条SQL语句放在一个事务中执行,需要添加事务有关的语句。如何开启事务?事务的操作方式:创建表:create table account( id原创 2017-02-16 21:56:06 · 3727 阅读 · 1 评论 -
JAVAWEB开发之文件的上传与下载(开源组件commons-fileupload的详细使用)
文件上传简介什么是文件上传?为什么使用文件上传?文件上传就是将客户端资源,通过网路传递到服务器端。因为文件数据比较大,必须通过文件上传才可以完成将数据保存到数据库端的操作。文件上传的本质就是IO流操作。文件上传概述实现原创 2017-02-28 00:01:49 · 9917 阅读 · 2 评论 -
JAVAWEB开发之HttpServletResponse和HttpServletRequest详解(下)(各种乱码、验证码、重定向和转发)
HttpServletRequest获取请求头信息 (1)获取客户机请求头String getHeader(String name)Enumeration getHeaders(String name)Enumeration getHeaderNames()(2)获取具体类型客户机请求头int getIntHead(String name)long getDateHe原创 2017-01-18 18:42:57 · 2013 阅读 · 2 评论 -
JAVAWEB开发之HttpServletResponse和HttpServletRequest详解(上)(各种乱码、验证码、重定向和转发)
HttpServletResponse简介Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象、和代表响应的response对象request和response对象即然代表请求和响应,那我们要获取客户机提交过来的数据,只需要找request对象就行了。要向客户机输出数据,只需要找response对象就行了HttpServletRespon原创 2017-01-18 15:00:46 · 3217 阅读 · 0 评论 -
JAVAWEB开发之Servlet和ServletContext详解(5)
Servlet简介 (1)Servlet是sun公司提供的一门专门用于开发动态web资源的技术 (2)Sun公司在其API中提供了一个Servlet接口,若用户想要开发一个动态web资源(即开发一个JAVA程序向浏览器输出数据),需要完成以下两个步骤:编写一个JAVA类,实现Servlet接口。把开发好的JAVA类部署到web服务器中。原创 2017-01-16 18:18:54 · 4137 阅读 · 0 评论 -
JAVAWEB开发模式之JSP的几种开发模式、处理Cookie中文乱码
JSP开发模式 SUN公司推出JSP技术后,同时也推荐了两种WEB应用程序的开发模式,一种是JSP+JavaBean模式,一种是Servlet+JSP+JavaBean模式。JSP+JavaBean模式适合开发业务逻辑不太复杂的web应用程序,这种模式下,JavaBean用于封装业务数据,JSP即负责处理用户请求,又显示数据。Servlet+JSP+JavaBean(MVC)模式适合开原创 2017-02-07 16:32:12 · 1531 阅读 · 0 评论