运行环境

Jdk:

1.8/1.9 一个电脑可以安排多个版本

每一个项目组必须统一用一个

每一次手动切换环境变量Classpath

Tomcat:

嵌入式7对于硬件友好Java一般89

内部构造:1安装版稳定性强;2绿色版用于测试安装

tomcat文件夹 8.5(文件夹目录不可删除 属于基本结构 只可以删除内容)

Bin > startup启动(shutdown关闭)

win使用.bat ,liu使用.sh

绿色版配置tomacat 需要在文件第一行第二行引入环境变量

set JAVA_HOME=C:\Program Files\Java\jdk1.8.0_31
set JRE_HOME=C:\Program Files\Java\jre1.8.0_31

Conf > server.xml

证书验证:安全证书中的tomcat配置

端口号配置

乱码UTF-8 格式配置

域名解析 localhost 127.0.0.1等

Lib > 第三方插件

或者直接在运行环境如eclipse中lib文件夹下添加

Temp > 临时文件存储 需要保留

Work > 缓存文件可以删除 读不到更改编码 可以清理浏览器缓存和这里的缓存 运行自动生成新的

Webapps > 项目运行落在这里

在eclipse软件中servers配置中 server locations 选择第二个进行配置path内容 关掉运行再操作,绿色只有root 安装版还有host-manager、manager,不可以删除;

如果项目没有放到root下,域名绑定项目时http://www/baidu.com/+文件后缀

开发环境

Spring:(2003年兴起的轻量型框架)(高内聚,低耦合)(hibernate orm 重量型)

Spring cloud     spring boot      spring mvc    分布式

Spring    IOC  AOP        oop AOP  分布式管理 模块式运行

应用框架:代码量迅速降低;

构造:

        Dao  增删改查

        ORM  对数据库持久化

        spring核心 servlet

生命周期:加载Servlet类》实例化》初始化init》处理请求 service ( 进一步调用doGet/doPost方法)》销毁 destory

S​​​​pring下的IOC容器和DI(依赖注入)

IOC容器:具有依赖注入功能的容器,是一个可以创建对象的容器;IOC主要负责实例化,定位;

 Manager m = new Manager();

配置应用程序的对象及建立这些对象之间的依赖关系;MVC

控制反转:指new实例工作不由程序员来担任,主要由spring来接管。

DI(依赖注入):在容器创建对象后,处理对象的依赖关系。

依赖注入在spring中一共有四种方式:

1、set注入方式;

2、静态工厂的注入方式;

3、构造方法的注入方式;

4、基于注解的注入方式;

起名方式:

域名:www.baidu.com

部署到以太网:com.baidu.XXXXX

在正常企业内书写代码要主要的事项:

Sql:尽量不要使用通配符的方式去书写代码。

第一:安全问题,防止黑客使用sql注入的方式来进行攻击;(安全)

第二:为了程序能够最大速度的运行;(速度快)

Spring的事务管理

事务主要是对数据库进行事务管理,spring的事务主要是用来管理spring所加载的ORM(Hibernate、Mybatis、MybatisPlus……)框架。

1、@Transactional(这里是对事务的一些描述属性)标识

2、spring在启动的时候会去解析生成bean,这个过程中会检测拥有相关注解的类和方法。同时给带有此事务的类或者方法生成相应的代理。

关于@Transactional的注解属性都有:

value: 可选的限定描述符,制定使用的事务管理器;

Propagtion:可选的事务传播行为设置;

isolation:可选的事务隔离级别设置;

readOnly:读写或只读事务;

timeout:事务超时时间设置;  ms

rollbackFor :导致事务回滚的异常类名字数组

oRollbackFor:不会导致事务回滚

noRollbackForClassName:不会导致事务回滚的异常类名字数组。

        Propagtion:各属性值的含义:

propagtion = REQUIRED  如果有事务,那么假如事务,没有的话新创建一个事务

propagtion = NOT_SUPPORTED:这个方法不开启事务;

propagtion = REQUIREDDS_NEW:不管是有有事务的存在,都创建一个新的事务来执行,原来的事务挂起,

propagtion = MANDATORY:必须在一个已有事务中执行;

propagtion = NEVER:不能在一个事务中执行,就是当前必须没有事务,否者抛出异常;

propagtion = SUPPORTS:当前存在事务,则在事务中运行,否者以非事务形态进行运行;

propagtion = NESTED:若有当前存在事务,则在运行一个嵌套的事务,如果当前没有事务,则按照REQUIRED  的方式来运行;

        Isolation:各属性值的含义:

TransactionDefinition.ISOLATION_DEFAULT:这是默认值,表示使用底层数据库的默认隔离级别。

TransactionDefinition.ISOLATION_READ_UNCOMMITTED:该隔离级别表示一个事务可以读取另一个事务修改但没有提交的数据,该级别不能防止脏读数据,不可重复读和幻读,因此很少使用该隔离级别,

TransactionDefinition.ISOLATION_READ_COMMITTED:该隔离级别表示一个事务只能读取另一个事务已经提交的数据,该级别可以防止脏读  ,这也是大多数情况下的推荐属性。(经常使用到的属性)

TransactionDefinition.ISOLATION_REPEATABLE_READ:该事物隔离级别表示一个事务在整个过程中可以多次重复执行某个查询,并且每次返回的记录都相同,该级别可以防止脏读 和不可重复读。

TransactionDefinition.ISLATION_SERIAIIABLE:所有的事务一次逐个执行,这样事务之间就完全不可能进行干扰,也就是说,该级别可以防止脏读   不可重复读及幻读  但是这将影响到程序的运行性能,通常情况下也会用到该级别。

脏读:当事务读取还未被提交的数据时,就会发生这种事件。(超前)

徐同学在北京,修改了一条数据,(未提交),  旭同学长春查到了;

幻读:就是读取到了历史数据,即使此数据已经被修改了,那么也会读到被修改前的这条数据。(落后)

基础环境框架搭建

创建web项目

>> 创建source folder根目录config(经理修改) (里面包括mybatis spring文件夹, 以及日志输出格式log4j.properties,修改地址数据库密码的db.properties工具,mybatis 文件夹中包括修改项目名”com.demo.model”的sqlMapConfig.xml文件,spring文件夹里面包括application_db.xml文件 可以连接多个数据源  ctrl+f修改文件名,springMvc.xml文件  ctrl+f修改文件名)

>>   src >      com.demo.model 实体映射

com.demo.util工具包

(含java:DataSource.DataSourceAspect.DynamicDataSource. DynamicDataSourceHolder)

com.demo.mapper数据库操作(xml  java)

com.demo.service(调mapper)  com.demo.service.impl实现service类

com.demo.controller 前后台交互(调service)

com.demo.common  公有代码

>>   添加lib包内jar包 > 在web App Libraries上build lib包 ,支撑项目

>>  修改web.xml

简单项目创建

创建web项目

>> 加载驱动数据库工具类conectionPool

>>  model 创建实体

>>  mapper.xml写sql语句 mapper.java 写xml接口 接口名与xml方法名一致

>>    service 接口与mapper接口一致调mapper  serviceimpl 实例化mapper 实现service类

>>    controller 调service 实例化service 调用mapper

>>    WebContent > WEB-INF > 创建pages保存jsp文件

写jstl语句导入jstl  <%@ taglib uri=”http://java.sun.com/jsp/jstl/core” prefix=”c” %>

登录

>>  前端页面jsp调整

>>  indexController

表:

Sys_users_info用户基本表

Tab_report_type业务表

项目简单搭建:

model 创建实体

前端页面jsp调整

mapper.xml写sql语句

mapper

service

serviceimpl

controller

前端页面jsp

软件环境的基本环境搭建及应用相关推荐

  1. 【本地调试环境一键安装包】php+mysql平台搭建集成软件总汇【php环境汇总】

    [本地调试环境一键安装包]php+mysql平台搭建集成软件总汇[php环境汇总] ********************************************************** ...

  2. 阿里巴巴高可用技术专家襄玲:压测环境的设计和搭建

    性能压测,是保障服务可用性和稳定性过程中,不可或缺的一环,但是有关性能压测的体系化分享并不多.从本期开始,我们将推出 <Performance Test Together> (简称PTT) ...

  3. 如何做好性能压测(一) | 压测环境的设计和搭建

    性能压测,是保障服务可用性和稳定性过程中,不可或缺的一环,但是有关性能压测的体系化分享并不多.如何做好性能压测的系列专题分享,将从性能压测的设计.实现.执行.监控.问题定位和分析.应用场景等多个纬度对 ...

  4. 如何做好性能压测:压测环境的设计和搭建

    01 性能环境要考虑的要素 性能压测,是保障服务可用性和稳定性过程中,不可或缺的一环.我们将从性能压测的设计.实现.执行.监控.问题定位和分析.应用场景等多个纬度对性能压测的全过程进行拆解,以帮助大家 ...

  5. 如何做好性能压测(一):压测环境的设计和搭建

    01 性能环境要考虑的要素 系统逻辑架构,即组成系统的组件.应用之间的结构.交互关系的抽象.最简单最基本的就是这三层架构. 三层逻辑结构图 客户层:用户请求端. Web层:处理客户端所有的业务请求逻辑 ...

  6. sit是什么环境_测试环境是什么_搭建测试环境要遵循什么原则?

    测试环境是什么? 测试进行软件测试的之前,需要搭建好测试环境.那什么是测试环境呢? 简单的说就是软件运行的平台,即软件.硬件和网络三种环境的合集,也就是说:测试环境=软件+硬件+网络 硬件:包括PC机 ...

  7. 【安信可A9G专题①】A9G环境在windows上搭建并编译,串口打印 Hello GPRS

    本系列博客学习由 安信可科技 - 官方博客 技术分享,如有疑问请留言或联系邮箱. 1.A9G环境在windows上搭建并编译,串口打印 Hello GPRS 2.A9G在微信公众号上的定位功能笔记分享 ...

  8. Android Studio环境配置安装、搭建详细步骤及使用方法

    APP准备工作如下 1.源码下载 因为我已经下载好了 就不演示了 连下载都不会我就不说什么了. 稍后我会随教程发源码出去 jdk-8u77-windows-x64 萝卜app 1.1 mahuaTV这 ...

  9. VSCode软件之配置JAVA环境

    VSCode软件之配置JAVA环境 一.首先下载VScode. 文章链接:点击打开文章<基于Windows和WSL 2的Visual Studio Code (VS Code) 安装及搭建 C/ ...

  10. Ubuntu环境下vjudge系统搭建

    Ubuntu环境下vjudge系统搭建 零. 前言 本文简单的介绍了vjudge 在 ubuntu环境下的安装,本文使用的vjudge源码来自浙江传媒大学张浩斌老师的 GitHub .教程大致思路来自 ...

最新文章

  1. GIT将本地项目上传到Github(两种简单、方便的方法)
  2. hashmap containsvalue时间复杂度_面试宝典:数据结构HashMap
  3. 从零开始-小程序采坑记录
  4. 什么是Spring Boot以及为什么它是用于创建微服务的首选框架
  5. textureview 缩放_View的双指缩放以及移动
  6. NYOJ_37_回文字符串
  7. sysbench 1.0.6 mysql_mysql sysbench 1.0.X
  8. Linux之alias命令
  9. 图片底下配的文字叫什么_PPT排版狂想篇 | 如何用一张图片搞定30种排版
  10. 使用预计算实时全局光照优化照明-设置场景
  11. 手机投屏到电视上怎么操作?
  12. TabLayout的Indicator自定义宽度
  13. 「Nginx实战」中学到的东西用在面试上,面试官都被怼得哑口无言
  14. 题解 P3387 【【模板】缩点】
  15. JavaWeb 服务器与客户端储存
  16. 华为鸿蒙2系统harmonyOS,华为鸿蒙系统明年目标覆盖1亿台以上设备
  17. JAVA常用jar包简介
  18. 2015 奇妙的数字
  19. 六度分离 (Floyd)
  20. OSG智能指针:osg::ref_ptr

热门文章

  1. 妮维雅 || 德国百年“大宝”的年轻态营销
  2. Activemq的集群
  3. 文件删了回收站清空了怎么恢复?文档内容误删怎么恢复
  4. 乡巴佬GHOST WIN7 SP1 装机版旗舰版(32位)2013 06
  5. Mine Goose Duck 0.4版本发布
  6. 鲍尔默最后一次员工大会:声泪俱下别微软
  7. 在线购物飞涨。 这就是它不会持续的原因
  8. Kali中常用的代理工具以及使用
  9. mLife Forum | 微生物组和数据挖掘
  10. Android studio Build时,Download maven-metadata.xml卡住不动的问题