java实际开发中遇到的问题(与NET区别)

1 循环语法

for(RTeacherSubject teacher : teacherSubjectList)

{     System.out.println(teacher.getTeacherclasssubjectid());

}

2 MYSQL语法

SELECT DISTINCT tsc.ClassID, CONCAT( tsc.grade ,‘年级‘,tsc.name )AS className FROM

cloud_ArchivesManage.T_TeacherInfo tti

JOIN

cloud_ArchivesManage.R_Teacher_Subject rts ON tti.UserID=rts.TeacherID

JOIN cloud_ArchivesManage.T_SchoolClass tsc ON tsc.ClassID=rts.ClassID

WHERE tti.UserID=13969823

SQLServer中

SELECT DISTINCT tsc.ClassID, CAST( tsc.grade AS

VARCHAR)+‘年级‘+tsc.name as className FROM

cloud_ArchivesManage.dbo.T_TeacherInfo tti

JOIN

cloud_ArchivesManage.dbo.R_Teacher_Subject rts ON tti.UserID=rts.TeacherID

JOIN cloud_ArchivesManage.dbo.T_SchoolClass tsc ON tsc.ClassID=rts.ClassID

WHERE tti.UserID=13969823

3 条件判断

<if test="ssid != null and ssid!=‘‘ and ssid!=‘-1‘">

AND tss.SSID=#{ssid,jdbcType=VARCHAR}

</if>

4 数据库isnull和ifnull问题

Sql中:ISNULL(s.num,0) AS studentNumber

MySql中: IFNULL(s.num,0) AS studentNumber

5 MYBATITS中问题

求总数量的时候注意返回类型

6 实例化问题

List<RClassVersion> classVersionList = new ArrayList<RClassVersion>();

7 自增长ID为null

8 DATETIME的数据库类型

TIMESTAMP

9 数据读取少一条的原因

LIMIT 0,3  默认从0开始

10 like查询

and scc.Name  like CONCAT(‘%‘,‘${classname}‘,‘%‘ )

11获取每月里的day

Calendar cal = Calendar.getInstance();

Int day=cal.get(Calendar.DATE));

12正则解析

String regex = "\\{[^\\{*].*\\}";

Pattern pattern = Pattern.compile(regex);

Matcher matcher = pattern.matcher(res);

JSONObject jsonobject = JSONObject.fromObject(matcher.group(0));

13 json解析

JSONObject jsonobject = JSONObject.fromObject(matcher.group(0));

数据里面嵌套数据

JSONArray ja1 = jsonobject.getJSONArray("Data");

List<ProductInfo> product = new ArrayList<ProductInfo>();

try {

for (int i = 0; i < ja1.size(); i++) {

JSONObject jsonItem = ja1.getJSONObject(i);

ProductInfo item = new ProductInfo();

item.setProductid(jsonItem.getInt("ProductID"));

item.setProductname(jsonItem.getString("ProductName"));

item.setStatus(jsonItem.getInt("Status"));

item.setLogoimg(jsonItem.getString("LogoImg"));

item.setUrl(jsonItem.getString("Url"));

product.add(item);

}

} catch (JSONException e) {

e.printStackTrace();

}

一层数据

String regex = "\\{[^\\{*].*\\}";

Pattern pattern = Pattern.compile(regex);

Matcher matcher = pattern.matcher(res);

if (matcher.find()) {

JSONObject jsonObject = JSONObject.fromObject(matcher.group(0));

try {

if (jsonObject.getInt("Code") == 200 && jsonObject.getBoolean("Data")) {

json.setMessage(jsonObject.getString("Message"));

json.setUrl(url);

json.setState(true);

} else {

json.setMessage(jsonObject.getString("Message"));

json.setUrl(url);

json.setState(false);

}

} catch (JSONException e) {

e.printStackTrace();

}

}

14 substring

String str = url.substring(url.length() - 1, url.length());

从哪位开始到哪位结束

15 jdbcType不写的问题

D_TYPE = #{awbType,jdbcType=VARCHAR} 中的jdbcType 不写有啥影响

答:不写为空时会报错,写了就不会

16 中文字符转为GB2312方法

public String changeCharset(String str, String newCharset) throws UnsupportedEncodingException {

if (str != null) {

// 用默认字符编码解码字符串。

byte[] bs = str.getBytes();

// 用新的字符编码生成字符串

return new String(bs, newCharset);

}

return null;

}

17 字符串拼接方法

C#

string res = string.Format("key={0}&userID={1}&productID={2}&dataType={3}&name={4}&schoolID={5}", key, userID, productId, "json", usercenterName, schoolAreaID)

java实现
String param1 = String.format("key=%1$s&userID=%2$s&productID=%3$s&dataType=%4$s&name=%5$s&schoolID=%6$s", key, userid,

productId, "json", userCenterName, schoolAreaID);

%s 字符串类型 如”mingrisoft”

%c 字符类型 ‘m’

%b 布尔类型 true

%d 整数类型(十进制) 99

%x 整数类型(十六进制) FF

%o 整数类型(八进制) 77

%f 浮点类型 99.99

%a 十六进制浮点类型 FF.35AE

%e 指数类型 9.38e+5

%g 通用浮点类型(f和e类型中较短的)

%% 百分比类型 %

%n 换行符

%tx 日期与时间类型(x代表不同的日期与时间转换符)

18 tomcat启动失败原因

Mapper.xml中问题,区分大小写

时间: 2024-10-08 05:18:14

java实际开发中遇到的问题(与NET区别)的相关文章

Java Web 开发中路径相关问题小结

Java Web开发中路径问题小结 (1) Web开发中路径的几个基本概念 假设在浏览器中访问了如下的页面,如图1所示: 图1 Eclipse中目录结构如图2所示: 图2 那么针对这个站点的几个基本概念表述如下: 1. web站点的根目录:http://localhost:8080/ 2. web应用程序的的根目录:http://localhost:8080/test/ 3.同级目录:http://localhost:8080/test/articles/article1.jsp和http://

日常 java web 开发中遇到的常见问题

view 层: 问题:jsp 页面double 值过大,会变成科学计数法 第一步:引入标签 <%@ taglib prefix= "fmt" uri ="/WEB-INF/tld/fmt.tld" %> 第二步: <fmt:formatNumber value= "${变量名} " pattern="#.00"/> 2.jsp和java后台交互,通过js 转码问题 js代码:       var tes

java web开发中的奇葩事web.xml中context-param中的注释

同事提交了代码.结果除同事之外,其他人全部编译报错.报错说web.xml中配置的一个bean 没有定义.按照报错提示,各种找,无果. 由于代码全部都是提交到svn主干,之前也没有做过备份,只能一步一步删除同事提交的代码,进行还原. 奇葩事情出现了! <context-param> <param-name>contextConfigLocation</param-name> <param-value> classpath:/context_entry.xml

在Android(Java)开发中如何实现类似C语言中的中断程序

在Android开发过程中,有时候会遇到这样的情况,在一个线程中,执行A操作,B操作需要等A操作结束后才进行,因此需要wait,在java中可以如下代码实现 Handler mBlueHandler = new Handler(Looper.getMainLooper()); Task task = new Task(); mBlueHandler.post(task); while (!task.finish) { synchronized (task) { try { task.wait()

java商城开发中的连接池的配置

在对java商城开发以及jsp商城的开发中,连接池的使用以及配置更为重要,为什么会如此说了,下面我们的开发人员就来带大家深入的了解一下java开发过程中的连接池. 数据库每个读写操作需要一个连接,而它的访问流程大概如下: 应用数据层向DataSource请求数据库连接 DataSource使用数据库Driver打开数据库连接 创建数据库连接,打开TCP socket 应用读/写数据库 如果该连接不再需要就关闭连接 关闭socket 容易推断出打开/关闭数据库连接是开销很大的操作.PostgreS

java商城开发中说说影响java商城系统和jsp商城效率的原因

java是现在比较流行的软件开发语言,同时也是互联网应用中安全性相对较高的一种开发语言了.被很多的电子金融系统开发企业以及电子商务网站建设企业所看重.虽然说在如今的互联网开发中,它比较有优势,然而用得不当的话,反而会使电子商务网站建设的性能受到影响.电子商务网站建设企业,就从多年的java商城开发中说说影响java商城系统和jsp商城效率的原因. 1.缺乏正确的容量规划 容量规划是一个全面的和发展的过程标准,预测当前和未来的IT环境容量需求.制定合理的容量规划不仅会确保和跟踪当前IT生产能力和稳

java web开发中,如何查看JSP和Servlet版本 (转)

原文出处:http://blog.163.com/qiu_yin_good/blog/static/16732934920123277481492/ 在看<struts2权威指南>的时候,书上很多处都提到环境要支持的JSP,Servlet版本.如果版本低,会出现异常.或者需要修改web.xml等. 现在记录下如何看自己java  web工程的JSP和servlet版本. 我的tomcat版本是7.0.26 方法:打开tomcat/lib,找到jsp-api.jar和servlet-api.ja

Android开发中.toString()和String.valueOf()的区别

其实,很多时候效果是差不多的 但是,有的时候用.toString()会报错,而用String.valueOf()就不会报错 这说明两者是有差别的,在细微之处~ .toString()和String.valueOf()的区别在哪呢? jdk的文档中对.toString()有说明: String.valueOf(Object   o)  if the argument is null, then a string equal to "null ";  otherwise,  the val

Java Web开发中MVC设计模式简介

一.有关Java Web与MVC设计模式 学习过基本Java Web开发的人都已经了解了如何编写基本的Servlet,如何编写jsp及如何更新浏览器中显示的内容.但是我们之前自己编写的应用一般存在无条理性,对于一个小型的网站这样的编写没有任何问题,但是一但我们需要编写大型的web工程的话,我们现有的编写模式会造成web应用的可扩展性较差,而且一但出现问题不能准确的定位出问题出在哪里. Java是一门应用设计模式比较广泛的语言.目前主流提出的23种设计模式均可在Java语言编写的程序中所应用.目前

Java web开发中主要用到的jar包

1.Java开发中主要用到的jar包介绍:(1)java JDK基础开发包:java包和javax包.书写方式:import java.lang.reflect.InvocationTargetException; import java.util.HashMap; import java.util.Map; 1.java.util包:集合类list/set/map等接口和实现类.calendar,date日期操作类.properties读取配置文件类.random随机数类.Timer计时器类.