---客户端
package com.hh.socket;
import java.io.*;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.List;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.hh.dao.InsertHourAndDayImpl;
import com.hh.entity.DayBean;
import com.hh.entity.HourBean;
//客户端,
public class Client {
HourBean hb=new HourBean();
DayBean db=new DayBean();
ApplicationContext context=new ClassPathXmlApplicationContext("Config.xml");
ApplicationContext con=new ClassPathXmlApplicationContext("applicationContext.xml");
public void getConn(){
String file="E:\\文档目录.xml";
try {
Socket socket=new Socket("127.0.0.1",8088);
PrintWriter writer=new PrintWriter(socket.getOutputStream());
writer.println(file);
writer.flush();
ObjectInputStream in=new ObjectInputStream(socket.getInputStream());
List list=(List) in.readObject();
InsertHourAndDayImpl ihi=(InsertHourAndDayImpl) con.getBean("jdbcImpl");
for(int i=0;i<list.size();i++){
boolean boo=ihi.insertDayData((DayBean)list.get(i));
if(boo){
System.out.println("Oh!Yeah!");
}
}
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
new Client().getConn();
}
}
-------服务端
package com.hh.socket;
import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.List;
import org.springframework.jdbc.core.JdbcTemplate;
import com.hh.dao.InsertHourAndDayImpl;
import com.hh.entity.HourBean;
//服务器端
public class Server{
HourBean hb=new HourBean();
//连接端口
public void getConn(){
try {
ServerSocket ssocket=new ServerSocket(8088);
System.out.println("连接开启!");
while(1==1){
Socket socket=ssocket.accept();
BufferedReader in=new BufferedReader(new InputStreamReader(socket.getInputStream()));
String str= in.readLine();
List list=new InsertHourAndDayImpl().evaluateDay(str);
ObjectOutputStream out=new ObjectOutputStream(socket.getOutputStream());
out.writeObject(list);
out.close();
in.close();
socket.close();
}
} catch (IOException e1) {
e1.printStackTrace();
}
}
public static void main(String[] args) {
new Server().getConn();
}
----------逻辑类
package com.hh.dao;
import java.io.File;
import java.util.*;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.jdbc.core.JdbcTemplate;
import com.hh.entity.DayBean;
import com.hh.entity.HourBean;
import com.hh.entity.InsertHourBiz;
public class InsertHourAndDayImpl implements InsertHourBiz{
JdbcTemplate template;
public void setTemplate(JdbcTemplate template) {
this.template = template;
}
HourBean hb=new HourBean();
public List evaluate(String file){
SAXReader read=new SAXReader();
Document doc=null;
try {
doc=read.read(new File(file));
} catch (DocumentException e) {
e.printStackTrace();
}
// 写入新文件
List l=new ArrayList();
Element ele = doc.getRootElement();
List list = ele.elements();
System.out.println( list.get(0).toString());
// 获得小时数据节点的值
for(int i=0;i<list.size();i++){
Element element = (Element) list.get(i);
//变压器id
String f0 = element.attributeValue("TranId");
System.out.println(f0);
//日期
String f1 = element.element("Date").getText();
f1 = f1.replaceAll("-", "/");
//尖峰平谷.有无功总码
float f2 = new Float(element.elementText("PowerNum")).floatValue();
float f3 = new Float(element.elementText("Needle")).floatValue();
float f4 = new Float(element.elementText("Apex")).floatValue();
float f5 = new Float(element.elementText("Ping")).floatValue();
float f6 = new Float(element.elementText("Valley")).floatValue();
float f7 = new Float(element.elementText("UnPowerNum")).floatValue();
float f8 = new Float(element.elementText("UnNeedle")).floatValue();
float f9 = new Float(element.elementText("UnApex")).floatValue();
float f10 = new Float(element.elementText("UnPing")).floatValue();
float f11 = new Float(element.elementText("UnValley")).floatValue();
// 有无功功率
float Power = new Float(element.elementText("Power")).floatValue();
float UnPower = new Float(element.elementText("UnPower")).floatValue();
//ABC电压电流
float av=new Float(element.elementText("AVoltage")).floatValue();
float bv=new Float(element.elementText("BVoltage")).floatValue();
float cv=new Float(element.elementText("CVoltage")).floatValue();
float ac=new Float(element.elementText("ACurrent")).floatValue();
float bc=new Float(element.elementText("BCurrent")).floatValue();
float cc=new Float(element.elementText("CCurrent")).floatValue();
//循环添加小时数据
HourBean hb=new HourBean(f0,new Date(f1),f2,f7,Power,UnPower,f3,f4,f5,f6,
f8,f9,f10,f11,av,bv,cv,ac,bc,cc);
l.add(hb);
}
return l;
}
//插入到小时数据库
public boolean insertHourData(HourBean hb) {
boolean boo=false;
Object[] obj={hb.getTranId(),hb.getTime(),new Float(hb.getPowerNum()),
new Float(hb.getUnPowerNum()),new Float(hb.getPower()),
new Float(hb.getUnPower()),new Float(hb.getNeedle()),new Float(hb.getApex()),
new Float(hb.getPing()),new Float(hb.getValley()),new Float(hb.getUnNeedle()),
new Float(hb.getUnApex()),new Float(hb.getUnPing()),new Float(hb.getUnValley()),
new Float(hb.getAVoltage()),new Float(hb.getBVoltage()),new Float(hb.getCVoltage()),
new Float(hb.getACurrent()),new Float(hb.getBCurrent()),new Float(hb.getCCurrent())};
String sql="insert into scott.elec_tranHour values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
template.update(sql,obj);
boo=true;
return boo;
}
//日数据
DayBean db=new DayBean();
public List evaluateDay(String file){
SAXReader read=new SAXReader();
Document doc=null;
try {
doc=read.read(new File(file));
} catch (DocumentException e) {
e.printStackTrace();
}
// 写入新文件
List l=new ArrayList();
Element ele = doc.getRootElement();
List list = ele.elements();
System.out.println( list.get(0).toString());
// 获得日数据节点的值
for(int i=0;i<list.size();i++){
Element element = (Element) list.get(i);
//变压器id
String f0 = element.attributeValue("TranId");
System.out.println(f0);
//日期
String f1 = element.element("Date").getText();
f1 = f1.replaceAll("-", "/");
//有功总码
float f2 = new Float(element.elementText("PowerTotalNum")).floatValue();
//有功总码.尖峰平谷
float f3 = new Float(element.elementText("PowerNeedle")).floatValue();
float f4 = new Float(element.elementText("PowerApex")).floatValue();
float f5 = new Float(element.elementText("PowerPing")).floatValue();
float f6 = new Float(element.elementText("PowerValley")).floatValue();
//无功总码.尖峰平谷
float f7 = new Float(element.elementText("UnPowerTotalNum")).floatValue();
float f8 = new Float(element.elementText("UnNeedle")).floatValue();
float f9 = new Float(element.elementText("UnApex")).floatValue();
float f10 = new Float(element.elementText("UnPing")).floatValue();
float f11 = new Float(element.elementText("UnValley")).floatValue();
// 有无功电量
float PowerElectricity = new Float(element.elementText("PowerElectricity")).floatValue();
float unPowerElectricity = new Float(element.elementText("UnPowerElectricity")).floatValue();
//循环添加小时数据
DayBean db=new DayBean(f0,new Date(f1),f2,PowerElectricity,f3,f4,f5,f6,f7,unPowerElectricity,f8,f9,f10,f11);
l.add(db);
}
return l;
}
//插入到日数据库
public boolean insertDayData(DayBean db){
boolean boo=false;
Object[] obj={db.getTranId(),db.getDate(),new Float(db.getPowerTotalNum()),
new Float(db.getPowerElectricity()),new Float(db.getPowerNeedle()),new Float(db.getPowerApex()),
new Float(db.getPowerPing()),new Float(db.getPowerValley()),new Float(db.getUnPowerTotalNum()),
new Float(db.getUnPowerElectricity()),new Float(db.getUnNeedle()),
new Float(db.getUnApex()),new Float(db.getUnPing()),
new Float(db.getUnValley()),
};
String sql="insert into scott.elec_tranDay values(?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
template.update(sql,obj);
boo=true;
return boo;
}
}
--------------配置文件
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName"
value="oracle.jdbc.driver.OracleDriver">
</property>
<property name="url"
value="jdbc:oracle:thin:@localhost:1521:orcl">
</property>
<property name="username" value="system"></property>
<property name="password" value="system"></property>
</bean>
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="dataSource"></property>
</bean>
<bean id="jdbcImpl" class="com.hh.dao.InsertHourAndDayImpl">
<property name="template" ref="jdbcTemplate"></property>
</bean>
</beans>
package com.hh.socket;
import java.io.*;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.List;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.hh.dao.InsertHourAndDayImpl;
import com.hh.entity.DayBean;
import com.hh.entity.HourBean;
//客户端,
public class Client {
HourBean hb=new HourBean();
DayBean db=new DayBean();
ApplicationContext context=new ClassPathXmlApplicationContext("Config.xml");
ApplicationContext con=new ClassPathXmlApplicationContext("applicationContext.xml");
public void getConn(){
String file="E:\\文档目录.xml";
try {
Socket socket=new Socket("127.0.0.1",8088);
PrintWriter writer=new PrintWriter(socket.getOutputStream());
writer.println(file);
writer.flush();
ObjectInputStream in=new ObjectInputStream(socket.getInputStream());
List list=(List) in.readObject();
InsertHourAndDayImpl ihi=(InsertHourAndDayImpl) con.getBean("jdbcImpl");
for(int i=0;i<list.size();i++){
boolean boo=ihi.insertDayData((DayBean)list.get(i));
if(boo){
System.out.println("Oh!Yeah!");
}
}
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
new Client().getConn();
}
}
-------服务端
package com.hh.socket;
import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.List;
import org.springframework.jdbc.core.JdbcTemplate;
import com.hh.dao.InsertHourAndDayImpl;
import com.hh.entity.HourBean;
//服务器端
public class Server{
HourBean hb=new HourBean();
//连接端口
public void getConn(){
try {
ServerSocket ssocket=new ServerSocket(8088);
System.out.println("连接开启!");
while(1==1){
Socket socket=ssocket.accept();
BufferedReader in=new BufferedReader(new InputStreamReader(socket.getInputStream()));
String str= in.readLine();
List list=new InsertHourAndDayImpl().evaluateDay(str);
ObjectOutputStream out=new ObjectOutputStream(socket.getOutputStream());
out.writeObject(list);
out.close();
in.close();
socket.close();
}
} catch (IOException e1) {
e1.printStackTrace();
}
}
public static void main(String[] args) {
new Server().getConn();
}
----------逻辑类
package com.hh.dao;
import java.io.File;
import java.util.*;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.jdbc.core.JdbcTemplate;
import com.hh.entity.DayBean;
import com.hh.entity.HourBean;
import com.hh.entity.InsertHourBiz;
public class InsertHourAndDayImpl implements InsertHourBiz{
JdbcTemplate template;
public void setTemplate(JdbcTemplate template) {
this.template = template;
}
HourBean hb=new HourBean();
public List evaluate(String file){
SAXReader read=new SAXReader();
Document doc=null;
try {
doc=read.read(new File(file));
} catch (DocumentException e) {
e.printStackTrace();
}
// 写入新文件
List l=new ArrayList();
Element ele = doc.getRootElement();
List list = ele.elements();
System.out.println( list.get(0).toString());
// 获得小时数据节点的值
for(int i=0;i<list.size();i++){
Element element = (Element) list.get(i);
//变压器id
String f0 = element.attributeValue("TranId");
System.out.println(f0);
//日期
String f1 = element.element("Date").getText();
f1 = f1.replaceAll("-", "/");
//尖峰平谷.有无功总码
float f2 = new Float(element.elementText("PowerNum")).floatValue();
float f3 = new Float(element.elementText("Needle")).floatValue();
float f4 = new Float(element.elementText("Apex")).floatValue();
float f5 = new Float(element.elementText("Ping")).floatValue();
float f6 = new Float(element.elementText("Valley")).floatValue();
float f7 = new Float(element.elementText("UnPowerNum")).floatValue();
float f8 = new Float(element.elementText("UnNeedle")).floatValue();
float f9 = new Float(element.elementText("UnApex")).floatValue();
float f10 = new Float(element.elementText("UnPing")).floatValue();
float f11 = new Float(element.elementText("UnValley")).floatValue();
// 有无功功率
float Power = new Float(element.elementText("Power")).floatValue();
float UnPower = new Float(element.elementText("UnPower")).floatValue();
//ABC电压电流
float av=new Float(element.elementText("AVoltage")).floatValue();
float bv=new Float(element.elementText("BVoltage")).floatValue();
float cv=new Float(element.elementText("CVoltage")).floatValue();
float ac=new Float(element.elementText("ACurrent")).floatValue();
float bc=new Float(element.elementText("BCurrent")).floatValue();
float cc=new Float(element.elementText("CCurrent")).floatValue();
//循环添加小时数据
HourBean hb=new HourBean(f0,new Date(f1),f2,f7,Power,UnPower,f3,f4,f5,f6,
f8,f9,f10,f11,av,bv,cv,ac,bc,cc);
l.add(hb);
}
return l;
}
//插入到小时数据库
public boolean insertHourData(HourBean hb) {
boolean boo=false;
Object[] obj={hb.getTranId(),hb.getTime(),new Float(hb.getPowerNum()),
new Float(hb.getUnPowerNum()),new Float(hb.getPower()),
new Float(hb.getUnPower()),new Float(hb.getNeedle()),new Float(hb.getApex()),
new Float(hb.getPing()),new Float(hb.getValley()),new Float(hb.getUnNeedle()),
new Float(hb.getUnApex()),new Float(hb.getUnPing()),new Float(hb.getUnValley()),
new Float(hb.getAVoltage()),new Float(hb.getBVoltage()),new Float(hb.getCVoltage()),
new Float(hb.getACurrent()),new Float(hb.getBCurrent()),new Float(hb.getCCurrent())};
String sql="insert into scott.elec_tranHour values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
template.update(sql,obj);
boo=true;
return boo;
}
//日数据
DayBean db=new DayBean();
public List evaluateDay(String file){
SAXReader read=new SAXReader();
Document doc=null;
try {
doc=read.read(new File(file));
} catch (DocumentException e) {
e.printStackTrace();
}
// 写入新文件
List l=new ArrayList();
Element ele = doc.getRootElement();
List list = ele.elements();
System.out.println( list.get(0).toString());
// 获得日数据节点的值
for(int i=0;i<list.size();i++){
Element element = (Element) list.get(i);
//变压器id
String f0 = element.attributeValue("TranId");
System.out.println(f0);
//日期
String f1 = element.element("Date").getText();
f1 = f1.replaceAll("-", "/");
//有功总码
float f2 = new Float(element.elementText("PowerTotalNum")).floatValue();
//有功总码.尖峰平谷
float f3 = new Float(element.elementText("PowerNeedle")).floatValue();
float f4 = new Float(element.elementText("PowerApex")).floatValue();
float f5 = new Float(element.elementText("PowerPing")).floatValue();
float f6 = new Float(element.elementText("PowerValley")).floatValue();
//无功总码.尖峰平谷
float f7 = new Float(element.elementText("UnPowerTotalNum")).floatValue();
float f8 = new Float(element.elementText("UnNeedle")).floatValue();
float f9 = new Float(element.elementText("UnApex")).floatValue();
float f10 = new Float(element.elementText("UnPing")).floatValue();
float f11 = new Float(element.elementText("UnValley")).floatValue();
// 有无功电量
float PowerElectricity = new Float(element.elementText("PowerElectricity")).floatValue();
float unPowerElectricity = new Float(element.elementText("UnPowerElectricity")).floatValue();
//循环添加小时数据
DayBean db=new DayBean(f0,new Date(f1),f2,PowerElectricity,f3,f4,f5,f6,f7,unPowerElectricity,f8,f9,f10,f11);
l.add(db);
}
return l;
}
//插入到日数据库
public boolean insertDayData(DayBean db){
boolean boo=false;
Object[] obj={db.getTranId(),db.getDate(),new Float(db.getPowerTotalNum()),
new Float(db.getPowerElectricity()),new Float(db.getPowerNeedle()),new Float(db.getPowerApex()),
new Float(db.getPowerPing()),new Float(db.getPowerValley()),new Float(db.getUnPowerTotalNum()),
new Float(db.getUnPowerElectricity()),new Float(db.getUnNeedle()),
new Float(db.getUnApex()),new Float(db.getUnPing()),
new Float(db.getUnValley()),
};
String sql="insert into scott.elec_tranDay values(?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
template.update(sql,obj);
boo=true;
return boo;
}
}
--------------配置文件
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName"
value="oracle.jdbc.driver.OracleDriver">
</property>
<property name="url"
value="jdbc:oracle:thin:@localhost:1521:orcl">
</property>
<property name="username" value="system"></property>
<property name="password" value="system"></property>
</bean>
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="dataSource"></property>
</bean>
<bean id="jdbcImpl" class="com.hh.dao.InsertHourAndDayImpl">
<property name="template" ref="jdbcTemplate"></property>
</bean>
</beans>