- 浏览: 468929 次
- 性别:
- 来自: 南京
文章分类
最新评论
-
fkbld:
楼主给个密码,谢谢了,baild_zr@126.com
ExtJs direct 推送 DEMO -
文思涌动:
你的方法太好用了,感激不尽。
MyEclipse 安装ADT -
zys08:
...
jquery uploadify -
攻城使:
我现在也在学习使用Uploadfiy,摸索中
jquery uploadify -
gksrxn:
liuyulovely 写道怎么解压还要密码,楼主解压的密码是 ...
ExtJs direct 推送 DEMO
模拟数据: 1 46917 0 家校互动(10元),开通免费<br>亲情电话(2元),开通免费<br>平安短信(2元),开通免费 1 溧水县教育局技装办 2 44149 0 家校互动(10元),免费期已满延长免费期 1 惠讯通讯 3 100 301749 亲情电话(2元),开通免费 2 南京联创 二呆 4 100 301749 家校互动(10元),开通免费 1 南京联创 二呆 5 100 0 亲情电话(2元),开通免费 1 南京联创 6 100 301749 平安短信(2元),开通免费 2 南京联创 二呆 7 17841 0 家校互动(10元),开通免费 7 南教公司 8 44149 0 家校互动(10元),开通免费 2 惠讯通讯 9 44149 414433 家校互动(10元),开通收费 9 惠讯通讯 九叶科技 10 17841 0 亲情电话(2元),免费期已满延长免费期 1 南教公司 11 44149 0 用户换号 2 惠讯通讯 12 100 0 平安短信(2元),开通收费 3 南京联创 13 17841 0 家校互动(10元),开通收费 31 南教公司 14 17841 0 家校互动(10元),开通收费<br>亲情电话(2元),开通免费 16 南教公司 要求:抽出 相同业务的用户短信涉及条数? FOR: 3 100 301749 亲情电话(2元),开通免费 2 南京联创 二呆 4 100 301749 家校互动(10元),开通免费 1 南京联创 二呆 6 100 301749 平安短信(2元),开通免费 2 南京联创 二呆 是一类数据,抽出相同的 业务,统计数据 5 100 0 亲情电话(2元),开通免费 1 南京联创 12 100 0 平安短信(2元),开通收费 3 南京联创 是一类数据,统计数据,以此类推 实现:首先获取个各个分组数据,并合并业务名称 实现结果如: 《一》 100 - 亲情电话(2元),开通免费|1<br>平安短信(2元),开通收费|3 46917 - 家校互动(10元),开通免费<br>亲情电话(2元),开通免费<br>平安短信(2元),开通免费|1 44149 - 家校互动(10元),免费期已满延长免费期|1<br>家校互动(10元),开通免费|2<br>用户换号|2 100 - 亲情电话(2元),开通免费|2<br>家校互动(10元),开通免费|1<br>平安短信(2元),开通免费|2 17841 - 家校互动(10元),开通免费|7<br>亲情电话(2元),免费期已满延长免费期|1<br>家校互动(10元),开通收费|31<br>家校互动(10元),开通收费<br>亲情电话(2元),开通免费|16 44149 - 家校互动(10元),开通收费|9 《二》 分割业务名称的详细条数 如: 家校互动(10元),开通免费|7 亲情电话(2元),免费期已满延长免费期|1 家校互动(10元),开通收费|31 家校互动(10元),开通收费 亲情电话(2元),开通免费|16 或者 家校互动 亲情电话 平安短信 万事如意|1 出现问题了,并不是每个业务名称的分割都会出现相应条数,有可能一组数据的业务名称为一条总记录 如: 46917 0 家校互动(10元),开通免费<br>亲情电话(2元),开通免费<br>平安短信(2元),开通免费 1 溧水县教育局技装办 说明各个业务 分别都是一条 《三》 获取相应的条数,不管总名称或相应条数 实现如: >>>>> 家校互动|1 >>>>> 亲情电话|1 >>>>> 平安短信|1 >>>>> 万事如意|1 《四》 各个相应的条数分割后,可能会出现相同的业务名称 如: 家校互动(10元),开通免费 亲情电话(2元),开通免费 平安短信(2元),开通免费|1 家校互动(10元),开通免费 亲情电话(2元),开通免费 平安短信(2元),开通免费|2 各个都出现了2次,并且各个数目不一样 分配各个业务名称相应条数 如: >>>>> 家校互动(10元),开通免费|1 >>>>> 亲情电话(2元),开通免费|1 >>>>> 平安短信(2元),开通免费|1 >>>>> 家校互动(10元),开通免费|2 >>>>> 亲情电话(2元),开通免费|2 >>>>> 平安短信(2元),开通免费|2 《五》 累计求和: 如: >>>>> 家校互动(10元),开通免费|1 >>>>> 亲情电话(2元),开通免费|1 >>>>> 平安短信(2元),开通免费|1 >>>>> 家校互动(10元),开通免费|2 >>>>> 亲情电话(2元),开通免费|2 >>>>> 平安短信(2元),开通免费|2 亲情电话(2元),开通免费=3 平安短信(2元),开通免费=3 家校互动(10元),开通免费=3 《六》 返回数据,OK,总共开发时间,一下午+晚上 8点-12点半 实现代码: List<TCChangeMaster> list = bookManageDao.findUnaudits(djids); // modify by chengrenyin Map<Integer,TcBean> map = new HashMap<Integer, TcBean>(); for(TCChangeMaster m:list) { if(map.containsKey(m.getAgentl1Id()+m.getAgentl2Id())) { TcBean tb = new TcBean(); tb.setAgentl1Id(m.getAgentl1Id()); tb.setAgentl2Id(m.getAgentl2Id()); tb.setAgentl1Name(m.getAgentl1Name()); tb.setAgent21Name(m.getAgentl2Name()); tb.setRemark(map.get(m.getAgentl1Id()+m.getAgentl2Id()).getRemark()+"<br>"+m.getRequestDesc()+"|"+m.getSump()); map.put(m.getAgentl1Id()+m.getAgentl2Id(),tb); }else { TcBean tb = new TcBean(); tb.setAgentl1Id(m.getAgentl1Id()); tb.setAgentl2Id(m.getAgentl2Id()); tb.setAgentl1Name(m.getAgentl1Name()); tb.setAgent21Name(m.getAgentl2Name()); // tb.setRemark(m.getRequestDesc()+"|"+m.getSump()); map.put(m.getAgentl1Id()+m.getAgentl2Id(),tb); } } // 整理 涉及用户数 by chengrenyin 2010-9-20 重构 requestDesc(解析) List<TcBean2> list2 = new ArrayList<TcBean2>(); Iterator it = map.entrySet().iterator(); while(it.hasNext()) { Map.Entry entry = (Map.Entry)it.next(); TcBean t = map.get(entry.getKey()); System.out.println(t.getAgentl1Id()+" - "+t.getRemark()); TcBean2 tb2 = new TcBean2(); tb2.setAgentl1Id(t.getAgentl1Id()); tb2.setAgentl2Id(t.getAgentl2Id()); tb2.setAgentl1Name(t.getAgentl1Name()); tb2.setAgent21Name(t.getAgent21Name()); // args str => result (chengrenyin) // 调用方法 String requestDesc = ""; } return list; -------------------------------------- /** * Test.java * com.linkage.justone5.agent * * Function: TODO * * ver date author * ────────────────────────────────── * Sep 2, 2010 程仁银 * * Copyright (c) 2010, All Rights Reserved. */ package com.linkage.justone5.agent; import java.util.HashMap; import java.util.Iterator; import java.util.Map; /** * ClassName:Test * Project: * Company: LINKAGE * * @author 程仁银 * @version * @since Ver 1.1 * @Date Sep 2, 2010 10:35:47 AM * * @see */ public class Test { OracleDBI2 dbi = new OracleDBI2(); public void method(String str) { // ******************************************************************************* String[] array = str.split("<br>"); StringBuffer sb = new StringBuffer(); if(array.length>1) { for(int k=0;k<array.length;k++) { System.out.println(array[k]); String[] desc = array[k].split("\\|"); if(desc.length<=1) { //requestDesc 里面包含多个值,并且他们的值或其中一个值是下一个值的涉及用户数据 int curr = k+1; String[] test = array[curr].split("\\|"); if(test.length>1) { int tint = Integer.parseInt(test[1]); sb.append(array[k]); sb.append("|"); sb.append(String.valueOf(tint)); sb.append("&"); }else { sb.append(array[k]); sb.append("|"); // 如果一行有N多个<br>这样他的下一个值也是没有值 for;家校互动<br>亲情电话<br>平安短信<br>测试短信|1 // 直到取到值为止(到最后一个) boolean flag = true; int tempInt = 0; while(flag) { int temp = curr+1; if(array[temp].split("\\|").length<=1)temp++; if(array[temp].split("\\|").length>1) { String[] tempArray = array[temp].split("\\|"); tempInt = Integer.parseInt(tempArray[1]); flag = false; } } sb.append(tempInt); sb.append("&"); // ******************************** curr++; } } if(desc.length>1){sb.append(array[k]);sb.append("&");} } }else { String[] strx = str.split("\\|"); sb.append(strx[0]); sb.append(","); sb.append(strx[1]+"条"); } System.out.println(sb.toString()); // 目前已分割出不同<br>的所有属性值,获取相同的值相加,展示 Map<String,Integer> resultMap = new HashMap<String, Integer>(); String[] resultTest = sb.toString().split("\\&"); for(int x=0;x<resultTest.length;x++) { System.out.println(">>>>> "+resultTest[x]); String[] temp2 = resultTest[x].split("\\|"); if(resultMap.containsKey(temp2[0])) { resultMap.put(temp2[0],Integer.parseInt(temp2[1])+resultMap.get(temp2[0])); }else { resultMap.put(temp2[0],Integer.parseInt(temp2[1])); } } Iterator it = resultMap.entrySet().iterator(); while(it.hasNext()) { // Map.Entry entry = (Map.Entry)it.next(); System.out.println(it.next()); } // ******************************************************************************* } public Test(){} public static void main(String[] args) { String str1 = "家校互动(10元),开通免费|7<br>亲情电话(2元),免费期已满延长免费期|1<br>家校互动(10元),开通收费|31<br>家校互动(10元),开通收费<br>亲情电话(2元),开通免费|16"; String str2 = "家校互动<br>亲情电话<br>平安短信<br>万事如意|1"; String str3 ="家校互动(10元),开通收费|9"; String str4 = "家校互动(10元),开通免费<br>亲情电话(2元),开通免费<br>平安短信(2元),开通免费|1<br>家校互动(10元),开通免费<br>亲情电话(2元),开通免费<br>平安短信(2元),开通免费|2"; new Test().method(str4); } } //家校互动(10元),开通收费亲情电话(2元),开通免费|16
---------------------修改
/**
* DecodeString.java
* com.linkage.justone4.bookmanage.domain
*
* Function: TODO
*
* ver date author
* ──────────────────────────────────
* Sep 21, 2010 程仁银
*
* Copyright (c) 2010, All Rights Reserved.
*/
package com.linkage.justone4.bookmanage.domain;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
/**
* ClassName:DecodeString
* Project:
* Company: LINKAGE
*
* @author 程仁银
* @version
* @since Ver 1.1
* @Date Sep 21, 2010 9:18:50 AM
*
* @see
*/
public class DecodeString {
static StringBuffer stringBuffer ;
public static String decodeString(String str)
{
// *******************************************************************************
String[] array = str.split("<br>");
StringBuffer sb = new StringBuffer();
if(array.length>1)
{
for(int k=0;k<array.length;k++)
{
System.out.println(array[k]);
String[] desc = array[k].split("\\|");
if(desc.length<=1)
{ //requestDesc 里面包含多个值,并且他们的值或其中一个值是下一个值的涉及用户数据
int curr = k+1;
String[] test = array[curr].split("\\|");
if(test.length>1)
{
int tint = Integer.parseInt(test[1]);
sb.append(array[k]);
sb.append("|");
sb.append(String.valueOf(tint));
sb.append("&");
}else
{
sb.append(array[k]);
sb.append("|");
// 如果一行有N多个<br>这样他的下一个值也是没有值 for;家校互动<br>亲情电话<br>平安短信<br>测试短信|1
// 直到取到值为止(到最后一个)
boolean flag = true;
int tempInt = 0;
while(flag)
{
int temp = curr+1;
if(array[temp].split("\\|").length<=1)temp++;
if(array[temp].split("\\|").length>1)
{
String[] tempArray = array[temp].split("\\|");
tempInt = Integer.parseInt(tempArray[1]);
flag = false;
}
}
sb.append(tempInt);
sb.append("&");
// ********************************
curr++;
}
}
if(desc.length>1){sb.append(array[k]);sb.append("&");}
}
}else
{
sb.append(str);
sb.append("&");
}
System.out.println(sb.toString());
// 目前已分割出不同<br>的所有属性值,获取相同的值相加,展示
Map<String,Integer> resultMap = new HashMap<String, Integer>();
String[] resultTest = sb.toString().split("\\&");
for(int x=0;x<resultTest.length;x++)
{
System.out.println(">>>>> "+resultTest[x]);
String[] temp2 = resultTest[x].split("\\|");
if(resultMap.containsKey(temp2[0]))
{
resultMap.put(temp2[0],Integer.parseInt(temp2[1])+resultMap.get(temp2[0]));
}else
{
resultMap.put(temp2[0],Integer.parseInt(temp2[1]));
}
}
stringBuffer = new StringBuffer();
Iterator it = resultMap.entrySet().iterator();
while(it.hasNext())
{
// Map.Entry entry = (Map.Entry)it.next();
stringBuffer.append(it.next().toString());
}
// *******************************************************************************
System.out.println("result = "+ stringBuffer);
return stringBuffer.toString();
}
}
发表评论
-
java 生成 验证码
2012-09-04 17:05 4649<script type="text/ja ... -
读取 properties
2012-08-21 17:19 1212import java.io.File; import ja ... -
eXtremeComponents 分页列表
2012-08-03 09:25 1708<%@taglib uri="/WEB-INF ... -
Map套map 前台jstl遍历
2012-08-02 10:56 2262public String queryAdminPoped ... -
MD5加密
2012-07-19 17:08 1110public class MD5psw { /** * M ... -
CSVReader
2012-07-03 08:49 8990package com.zte.nva.dap.hadoop. ... -
java调用linux shell命令
2012-06-20 19:06 2011/** * 调用shell命令,创建android ... -
反编译插件jad安装 MyEclipse8.5
2012-04-23 10:45 1351准备工作 下载jad.exe文件:http://www ... -
强化不可实例化能力
2011-09-28 15:54 850有时候我们会编一些只含有静态域和静态方法的类,用私有构造函数强 ... -
持续集成环境配置
2011-09-27 10:58 836见附件 见附件 -
Serializable demo
2011-09-23 14:45 973/** * serialization 序列化 * s ... -
junit4 @test DEMO
2011-09-15 16:15 5246package com.isoftstone.ecc.juni ... -
重写@Override toString
2011-07-20 14:30 1639/** * UserBean.java * com ... -
request.getParameterNames()和request.getParameterValues()
2011-06-09 16:38 4470request.getParameterNames()和r ... -
java基础の解析 map
2011-05-19 14:06 1477package com.csdn; import jav ... -
java Swing 的excel 操作 -导入导出 (原型)
2011-04-14 17:01 4623package com.excel; import ... -
java 发送EMAIL邮件
2011-04-14 15:56 1017import java.util.Date; import ... -
java和JSTL遍历map
2011-04-14 15:50 1302public Map<Integer,List<M ... -
MyEclipseGen
2011-03-12 11:26 1000myeclipse的激活码自动生成 import java.i ... -
TimerTask
2011-03-01 21:42 1143import java.util.Timer; import ...
相关推荐
在Qt中,一个工程(Project)通常代表一个单独的可执行文件或库,而模块(Module)则是项目中的逻辑分组,可能包含多个类或功能相关的源文件。通过合理划分工程和模块,可以有效地提高代码的复用性和可读性。 在Qt ...
本文将深入探讨如何在IntelliJ IDEA(Idea)中创建一个基于Spring Boot的多模块项目,以及这样做的好处。 首先,我们来理解Spring Boot多模块项目的概念。一个Spring Boot项目可以被拆分成多个独立的模块,每个模块...
1. **初始化主项目**:首先,在Eclipse中创建一个新的Gradle项目,作为整个多模块项目的根目录。根目录的`build.gradle`文件将包含所有子模块的定义。 2. **添加子模块**:在根目录下,为每个子模块创建一个单独的...
SpringCloud分布式微服务项目Common通用依赖模块抽离示例代码 SpringCloud分布式微服务项目Common通用依赖模块抽离示例代码 SpringCloud分布式微服务项目Common通用依赖模块抽离示例代码 SpringCloud分布式微服务...
基于python flask搭建的一个具有编辑,删除,发布文章,富文本编辑器集成的小项目,可作为模块嵌入自己的开发项目中基于python flask搭建的一个具有编辑,删除,发布文章,富文本编辑器集成的小项目,可作为模块嵌入...
首先,创建一个父项目,然后在父项目的pom.xml中添加子模块的定义,最后在父项目目录下为每个子模块生成对应的目录结构和基本的pom.xml。 4. 依赖管理: 在父pom.xml中,通过标签可以定义所有子模块共有的依赖及其...
首先,Maven多模块项目是将一个大型项目划分为多个相互依赖的子项目,每个子项目负责特定的功能模块,这样可以提高开发效率,便于代码维护和团队协作。创建多模块项目的第一步是设置一个父项目(Parent Project),...
本文将深入剖析若依项目的各个核心模块,帮助读者理解其功能特性,以便更好地利用这个框架进行实际项目开发。 一、用户管理模块 若依项目中的用户管理模块主要负责用户的注册、登录以及权限管理。用户注册支持邮箱...
在本示例中,我们将创建一个名为 ${PREFIXE}-start 的模块,该模块将用于启动项目。 三、配置模块之间的依赖关系 在创建完启动模块后,我们需要配置模块之间的依赖关系。在 SpringBoot 中,我们可以使用 Maven 或 ...
标题中的“gradle将多模块打包成一个jar执行类demo”指的是使用Gradle构建工具将一个包含多个子模块的项目打包成一个可执行的JAR文件。在Java开发中,多模块项目通常是为了实现模块化设计,提高代码的可复用性和可...
这可能是项目中的一个核心业务模块,可能包含特定业务逻辑和服务。具体功能需要根据项目源代码来分析。 6. **web**: 这个模块可能负责提供HTTP接口,即应用的前端控制器。它通常会包含Spring MVC的配置和控制器...
本篇文章将详细探讨"Maven多模块项目构建过程",并结合提供的资源"搭建maven多工程模块步骤",来深入理解如何创建和管理一个包含多个子项目的Maven工程。 1. Maven多模块项目概述: Maven多模块项目是指由一个父...
在Maven中,多模块项目是由一个父模块(Parent Module)和若干子模块(Child Modules)组成。父模块主要负责定义公共的依赖版本和插件配置,而子模块则各自负责具体的功能实现。通过`<modules>`标签,父模块可以声明...
1. **Maven多模块项目结构**:一个典型的Maven多模块项目通常包括一个父模块(parent)和多个子模块(sub-modules)。父模块的`pom.xml`文件不包含任何代码,只负责设定共用的属性、版本号、依赖管理和构建插件。子...
软件项目设计方案模块(框架)是一个软件项目的整体架构设计,旨在为软件项目的设计和开发提供一个统一的架构模式。该模块包括了项目背景、项目需求分析、项目设计方案等几个部分。 项目背景 ---------- 项目背景...
这个“在RuoYi项目基础上改造”的案例就是一个典型的实例,它涉及到了微信小程序的开发、多模块化整合以及源码资源的使用。下面将详细阐述这些关键知识点。 首先,RuoYi项目是一个常见的Java Web管理系统,它的核心...
在本项目中,"first-app"可能代表了项目的第一个应用模块。在实际操作中,我们会在该模块下编写应用的启动类、配置文件以及相关业务代码。启动类通常会继承`SpringBootServletInitializer`并覆盖`configure`方法,...
要创建一个Maven多模块项目,首先我们需要在`pom.xml`文件中定义项目的整体结构,包括各个模块的依赖关系。例如,一个典型的电商项目可能包含以下几个模块:`parent`(父模块),`common`(公共模块,包含共享的代码...
Maven,一个流行的Java构建工具,提供了强大的支持来管理模块化项目。本“maven 模块化项目demo”旨在展示如何使用Maven构建和管理模块化的Java应用。 Maven的核心概念是“项目对象模型”(Project Object Model,...
2. **添加模块项目**:在新创建的解决方案中,添加每个模块为一个单独的项目。每个项目代表一个特定的功能或服务,例如“UserModule”、“ProductModule”和“OrderModule”。在IDE中,通过"添加新项目"功能,选择...