1.jsp页面form传递过来的值是在后台ishi通过name获得的而非ID。上传文字要用input type=text属性

<tr>
<th>品牌:</th>
<td><input class="common-text" name="productBrand" size="50" value="比如:耐克" type="text"></td>
</tr>

2.form上传图片等,要用input  type=file类型

<tr>
<th><i class="require-red">*</i>详细页大图4:</th>
<td><input name="detailBig4img" id="" type="file"><!--<input type="submit" onclick="submitForm('/jscss/admin/design/upload')" value="上传图片"/>--></td>
</tr>

3.form上传的input标签中有value属性,它可以指定上传内容的默认值。

如上传文字:<input class="common-text" name="productBrand" size="50" value="比如:耐克" type="text">

默认值就是比如:耐克

4.spring,springmvc mybatis等配置文件在断网情况下,是不能读取的,因为配置文件中的dtd约束是网络上获取的。

所以会导致项目启动失败,不能正确启动

如spring的配置文件dtd约束xmlns="http://www.springframework.org/schema/beans"。

5.spring中配置个每个ioc bean,都是要有实现类的,废话,否则怎么相当于new 一个对象。ioc用的class名称反射创建类实例的。

配置bean 的class属性

<bean id="countIPDao" class="org.mybatis.spring.mapper.MapperFactoryBean">

6.运用myabatis自动实现mapper dao层实现类时,记得要在spring中将这些实现类mapper注入到ioc中。这样你才能在项目中用这些dao实现类啊

要记住这些dao实现类的class属性是固定的,都是org.mybatis.spring.mapper.MapperFactoryBean

并要向其中注入sqlsessionFactory属性

<bean id="countIPDao" class="org.mybatis.spring.mapper.MapperFactoryBean">
<property name="mapperInterface" value="com.dao.countIPI"></property>
<property name="sqlSessionFactory" ref="sqlSessionFactory"></property>
</bean>

7.web开发这个流程是固定的

controller注入service,service注入dao的实现类。

这个是确定的,流程就这样。

唯一要注意的是保证dao的实现类线程安全问题,即sqlsession(jdbc connection)的线程安全问题。保证dao的每个方法里,都是线程独立的sqlsession.

不过这些框架基本都会为你配置好,比如jdbcTemplate,jdbcDaoSupport类等。

其实现思路也基本都一样,sqlSessionFactory是线程安全的,注入到每个dao实现类这个sqlSessionFactory bean。然后在dao的每个实现类中,调用sqlSessionFactory.getConnection()方法获得一个新的connection。

因为sqlSessionFactoory是线程安全的,sqlsession不是线程安全的。

只要保证了dao实现类是线程安全的,也就能保证service是线程安全的。进而能保证controller都是线程安全的,这一系列都是线程安全的,

关键在于保证dao实现是线程安全的。

8.sqlSessionFactory,中获得connection。connection是从数据库连接池中获得的,数据库连接池有启动多少个connection的配置。

所以,多线程访问,即便,最多也只能支持数据库连接池的connection连接数量访问而已。因为上层调用的connection还是从数据库连接池中获得的。

说白了,能支持多少人并发访问(动态网站),还是主要看connection连接池配置了多少,当然这是在没有用缓存的情况下。

如果用了缓存,那并发量能更大,超过数据库连接池配置的数量。这个上限就看服务器cpu ,内存支持了

FT项目开发技术点(四)的更多相关文章

  1. FT项目开发技术点(二)

    1.mybatis二级缓存,指的的是将数据缓存,而非对象,而非获得的list.缓存将数据库中的数据,是数据,缓存到内存中.之后将数据每次重新加载到list中,所以每次生成的list对象都是不同的,li ...

  2. FT项目开发技术点(三)

    1.eclipse中开发的web项目怎么放到tomcat中? 记得开始学习Java Web的时候,首先用的是Eclipse开发,但是有一个问题始终没有弄明白,做好的Web项目是如何发布到Tomcat服 ...

  3. Android项目开发全程(四)-- 将网络返回的json字符串轻松转换成listview列表

    前面几篇博文介绍了从项目搭建到获取网络字符串,对一个项目的前期整体工作进行了详细的介绍,本篇接着上篇介绍一下怎么样优雅将网络返回的json字符串轻松转换成listview列表. 先上图,看一下效果. ...

  4. 前端(Node.js)(3)-- Node.js实战项目开发:“技术问答”

    1.Web 与 Node.js 相关技术介绍 1.1.Web应用的基本组件 web应用的三大部分 brower(GUI)<==>webserver(business logic.data ...

  5. 郑政 | 2021软件代码开发技术作业四 | 需求改进&系统设计

    需求改进&系统设计 -------------------------------------------------------------------------------------- ...

  6. JAVAEE 和项目开发(第四课:HTTP的响应格式和响应状态码)

    HTTP 协议之响应 响应格式的结构: 响应行(状态行):HTTP 版本.状态码.状态消息 响应头:消息报头,客户端使用的附加信息 空行:响应头和响应实体之间的,必须的. 响应实体:正文,服务器返回给 ...

  7. Web项目开发中用到的缓存技术

    在WEB开发中用来应付高流量最有效的办法就是用缓存技术,能有效的提高服务器负载性能,用空间换取时间.缓存一般用来 存储频繁访问的数据 临时存储耗时的计算结果 内存缓存减少磁盘IO 使用缓存的2个主要原 ...

  8. CoreCRM 开发实录——开始之新项目的技术选择

    2016年11月,接受了一个工作,是对"悟空CRM"进行一些修补.这是一个不错的 CRM,开源,并提供一个 SaaS 的服务.正好微软的 .NET Core 和 ASP.NET C ...

  9. p2p网贷项目开发全过程技术详解,应用框架是ci2.2

    p2p网贷项目开发全过程技术详解,应用框架是ci2.2 很标准的mvc开发代码,代码也很简单,方便二次开发 这篇文章会不断更新

随机推荐

  1. Python学习笔记:bisect模块实现二分搜索

    在Python中可以利用bisect模块来实现二分搜索,该模块包含函数只有几个: import bisect L = [1,3,4,5,5,5,8,10] x = 5 bisect.bisect_le ...

  2. Jenkins+Docker持续集成

    本节内容: Jenkins介绍 安装部署Jenkins Jenkins构建maven风格的job Jenkins邮件通知设置 Sonar Jenkins与Docker结合 一.Jenkins介绍 Je ...

  3. CCF CSP 201512-2 消除类游戏

    CCF计算机职业资格认证考试题解系列文章为meelo原创,请务必以链接形式注明本文地址 CCF CSP 201512-2 消除类游戏 问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行 ...

  4. 【58沈剑架构系列】RPC-client异步收发核心细节?

    第一章聊了[“为什么要进行服务化,服务化究竟解决什么问题”] 第二章聊了[“微服务的服务粒度选型”] 第三章聊了[“为什么说要搞定微服务架构,先搞定RPC框架?”] 上一章聊了[“微服务架构之RPC- ...

  5. 【LOJ】#2430. 「POI2014」沙拉餐厅 Salad Bar

    题解 波兰人的j是苹果,p是橘子 还真是跟中国过不去啊= =写的时候很难受 我们先求出每个点作为起点,能延伸到的最大长度,这个可以处理成前缀和,查询一下区间最小值是不是小于0,用st表实现,如果区间最 ...

  6. PHP 博客收集

    https://lvwenhan.com/ www.chrisyue.com https://silex.symfony.com/ https://www.chrisyue.com/translati ...

  7. JFinal框架使用

    表单直接提交页面,不用ajax 后台; /** * 修改 */ public void edit() { String id=getPara("id"); String job=g ...

  8. Tensorflow学习:(三)神经网络优化

    一.完善常用概念和细节 1.神经元模型: 之前的神经元结构都采用线上的权重w直接乘以输入数据x,用数学表达式即,但这样的结构不够完善. 完善的结构需要加上偏置,并加上激励函数.用数学公式表示为:.其中 ...

  9. [leetcode greedy]55. Jump Game

    Given an array of non-negative integers, you are initially positioned at the first index of the arra ...

  10. C#语法浮点型字面量

    C#语法浮点型字面量 小数是生活中经常使用的一种数据表示形式.我们日常使用的5.5.0.6都是小数.在编程语言中,这种数据表示方式被称为浮点型数.浮点型数由整数部分.小数部分和小数点组成.浮点型字面量 ...