1.deviceOperateTrendIndex.jsp
设备操作趋势主界面//设置默认访问的界面
var indexPage = "/device/deviceListAjax.do";
$(document).ready(function(){
//绑定tab页
$("#tabs span").click(function(){
var tabHtml = $(this).html();
switch(tabHtml){
case "空气魔方":
$("#mainframe").attr("src", "/device/deviceListAjax.do");
break;
default:
break;
}
$(this).addClass('active').siblings().removeClass('active');
});
});
2.deviceOperateTrend_Kqmf.jsp
pageEncoding="UTF-8"%>
设备操作趋势-空气魔方require.config({
paths: {
echarts: '/components/echarts'
}
});
$(document).ready(function(){
//设置整体图片DIV的高度
$('#page1').height($('body').height() - 100);
//设置图片展示区的高度
$('div[myattr = "pic"]').each(function(){
$(this).height($(this).parent().height() - 20);
});
//(1)加载累加的设备操作趋势图,加载当日的设备操作趋势图
queryDiagramAndTable();
});
//根据时间查询相应的数据
function queryDiagramAndTable(){
var startDateValue = $('#startDateValue').val();
var endDateValue = $('#endDateValue').val();
var regionName = getRegionCode();
var region = (REGION == 'ALL')?'':REGION;
endDateValue = getCorrectDateByInputDate(endDateValue);
//(1)查询累加的折线数据图
queryTotalDiagramData(startDateValue, endDateValue, region, regionName);
//(2)查询当前数据报表
queryCurrentDiagramData(startDateValue, endDateValue, region, regionName);
//(3)查询数据表
// queryDataTable(startDateValue, endDateValue, region, regionName);
}
//(1)查询表数据,查询累计的数据操作折线图
function queryTotalDiagramData(startDateValue, endDateValue, region, regionName){
//定义折线图的选项
var lineOption = loadLineOption();
$.ajax({
type: 'POST',
url: '/device/showEcharts.do',
async: false,
dataType: 'JSON',
// data:{startTime:startDateValue, endTime: endDateValue, region: region, regionName: regionName},
success: function(data){
console.log(data);
//设置累加图表显示
//定义类型数组,设备数,用户数
// lineOption.legend.data = data.legendDatas;
//定义X坐标显示
lineOption.xAxis[0].data = data.xDatas;
//定义每种类型的显示
lineOption.series = data.series;
//重新加载数据图
loadTotalDiagram(lineOption);
},
error:function(data){
//alert("异常");
}
});
}
//(2)查询表数据,查询累计的数据操作折线图
function queryCurrentDiagramData(startDateValue, endDateValue, region, regionName){
var lineOption = loadBarOption();
$.ajax({
url: '/device/showBarEcharts.do',
type: 'POST',
data:{startTime:startDateValue, 'endTime': endDateValue, region: region, regionName: regionName},
success: function(data){
console.log(data);
//设置累加图表显示d
//定义类型数组,设备数,用户数
// lineOption.legend.data = data.legendDatas;
//定义X坐标显示
lineOption.xAxis[0].data = data.xDatas;
//定义每种类型的显示
lineOption.series = data.series;
//重新加载数据图
loadCurrentDiagram(lineOption);
},
error:function(){
alert('请求异常');
}
});
}
//(3)加载设备操作趋势表
function queryDataTable(startDateValue, endDateValue, region, regionName){
//发送请求
$.ajax({
url: "/deviceOperateTrend/queryTableDataDiagram.do",
type: 'POST',
data: {'startTime': startDateValue, 'endTime': endDateValue, region: region, regionName: regionName},
success: function(data){
data = eval("(" + data + ")");
//重新加载数据图
loadTableData(data);
},
error: function(e){
alert('请求异常');
}
});
}
//(1-1)加载累计设备数
function loadTotalDiagram(lineOption){
require([
'echarts',
'echarts/theme/macarons',
'echarts/chart/line'
],
function(ec, theme){
var myChart = ec.init(document.getElementById("picPage1-1-1"), theme);
myChart.setOption(lineOption, true);
});
}
//(2-1)加载当日设备数
function loadCurrentDiagram(lineOption){
require([
'echarts',
'echarts/theme/macarons',
'echarts/chart/bar'
],
function(ec, theme){
var myChart = ec.init(document.getElementById("picPage1-1-2"), theme);
myChart.setOption(lineOption, true);
});
}
//(3-1)添加表格数据
function loadTableData(tabRealData) {
tabData = (tabRealData == undefined ? tabData : tabRealData);
$("#example").find("tr:gt(0)").remove();
//得到表格有多少列
for (var i = 0; i < tabData.length; i++) {
var tr = $("
");for(var j = 0; j < 5; j++){
if(i%2 == 0){
tr.append("
" + tabData[i][j] + "");}
else{
tr.append("
" + tabData[i][j] + "");}
}
$("#example").append(tr);
}
}
日期累计绑定用户数累计绑定设备数每日活跃设备每日APP活跃用户
3.userAnalysisAjax.jsp
pageEncoding="UTF-8"%>
String basePath = request.getContextPath();
%>
设备操作趋势-空气魔方href="/theme/css/base.css" />
href="/theme/css/common.css" />
href="/components/jqueryUI/jquery-ui.css" />
require.config({
paths: {
echarts: '/components/echarts'
}
});
$(document).ready(function(){
//设置整体图片DIV的高度
$('#page1').height($('body').height() - 100);
//设置图片展示区的高度
$('div[myattr = "pic"]').each(function(){
$(this).height($(this).parent().height() - 20);
});
//(1)加载累加的设备操作趋势图,加载当日的设备操作趋势图
queryDiagramAndTable();
});
function search(){
queryDiagramAndTable();
}
//根据时间查询相应的数据
function queryDiagramAndTable(){
var startDateValue = $('#startDateValue').val();
var endDateValue = $('#endDateValue').val();
var regionName = getRegionCode();
var region = (REGION == 'ALL')?'':REGION;
// endDateValue = getCorrectDateByInputDate(endDateValue);
//(1)查询累加的折线数据图
queryTotalDiagramData(startDateValue, endDateValue, region, regionName);
//(2)查询当前数据报表
queryCurrentDiagramData(startDateValue, endDateValue, region, regionName);
//(3)查询数据表
// queryDataTable(startDateValue, endDateValue, region, regionName);
}
//(1)查询表数据,查询累计的数据操作折线图
function queryTotalDiagramData(startDateValue, endDateValue, region, regionName){
var startTime = $("input:text[name='startTime']").val();
var endTime = $("input:text[name='endTime']").val();
//定义折线图的选项
var lineOption = loadLineOption();
$.ajax({
type: 'POST',
url: '/device/showEcharts.do',
async: false,
dataType: 'JSON',
data:{startTime:startTime,endTime:endTime},
// data:{startTime:startDateValue, endTime: endDateValue, region: region, regionName: regionName},
success: function(data){
console.log(data);
//设置累加图表显示
//定义类型数组,设备数,用户数
lineOption.legend.data = data.legendDatas;
//定义X坐标显示
lineOption.xAxis[0].data = data.xDatas;
//定义每种类型的显示
lineOption.series = data.series;
//重新加载数据图
loadTotalDiagram(lineOption);
},
error:function(data){
//alert("异常");
}
});
}
//(2)查询表数据,查询累计的数据操作柱状图
function queryCurrentDiagramData(startDateValue, endDateValue, region, regionName){
var startTime = $("input:text[name='startTime']").val();
var endTime = $("input:text[name='endTime']").val();
var lineOption = loadBarOption();
$.ajax({
url: '/device/showBarEcharts.do',
type: 'POST',
data:{startTime:startTime,endTime:endTime},
//data:{startTime:startDateValue, 'endTime': endDateValue, region: region, regionName: regionName},
success: function(data){
console.log(data);
//设置累加图表显示d
//定义类型数组,设备数,用户数
lineOption.legend.data = data.legendDatas;
//定义X坐标显示
lineOption.xAxis[0].data = data.xDatas;
//定义每种类型的显示
lineOption.series = data.series;
//重新加载数据图
loadCurrentDiagram(lineOption);
},
error:function(){
alert('请求异常');
}
});
}
//(3)加载设备操作趋势表
function queryDataTable(startDateValue, endDateValue, region, regionName){
//发送请求
$.ajax({
url: "/deviceOperateTrend/queryTableDataDiagram.do",
type : 'POST',
data : {
'startTime' : startDateValue,
'endTime' : endDateValue,
region : region,
regionName : regionName
},
success : function(data) {
data = eval("(" + data + ")");
//重新加载数据图
loadTableData(data);
},
error : function(e) {
alert('请求异常');
}
});
}
//(1-1)加载累计设备数
function loadTotalDiagram(lineOption) {
require([ 'echarts', 'echarts/theme/macarons', 'echarts/chart/line' ],
function(ec, theme) {
var myChart = ec.init(document
.getElementById("picPage1-1-1"), theme);
myChart.setOption(lineOption, true);
});
}
//(2-1)加载当日设备数
function loadCurrentDiagram(lineOption) {
require([ 'echarts', 'echarts/theme/macarons', 'echarts/chart/bar' ],
function(ec, theme) {
var myChart = ec.init(document
.getElementById("picPage1-1-2"), theme);
myChart.setOption(lineOption, true);
});
}
//(3-1)添加表格数据
function loadTableData(tabRealData) {
tabData = (tabRealData == undefined ? tabData : tabRealData);
$("#example").find("tr:gt(0)").remove();
//得到表格有多少列
for (var i = 0; i < tabData.length; i++) {
var tr = $("
");for (var j = 0; j < 5; j++) {
if (i % 2 == 0) {
tr.append("
" + tabData[i][j] + "");} else {
tr.append("
" + tabData[i][j] + "");}
}
$("#example").append(tr);
}
}
开始时间
结束时间
class="clearfix">
折线图趋势
柱状图趋势
4.userAnalysisList.jsp
设备操作趋势主界面//设置默认访问的界面
var indexPage = "/device/userAnalysisAjax.do";
$(document).ready(function(){
//绑定tab页
$("#tabs span").click(function(){
var tabHtml = $(this).html();
switch(tabHtml){
case "空气魔方":
$("#mainframe").attr("src", "/device/userAnalysisAjax.do");
break;
default:
break;
}
$(this).addClass('active').siblings().removeClass('active');
});
});
KPI
>
商品数据实时分析
5.DeviceController.java
package com.tgb.web.controller;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import com.tgb.web.pojo.BarEchart;
import com.tgb.web.pojo.LineEchart;
import com.tgb.web.service.DeviceService;
@Controller
@RequestMapping("/device")
public class DeviceController {
@Resource
private DeviceService deviceService;
@RequestMapping(value = "/deviceList.do")
public String deviceEchartsList(HttpServletRequest request,
ModelMap modelMap) {
return "/device/deviceOperateTrendIndex";
}
@RequestMapping(value = "/deviceListAjax.do")
public String deviceEchartsListAjax(HttpServletRequest request,
ModelMap modelMap) {
return "/device/deviceOperateTrend_Kqmf";
}
@RequestMapping(value = "/showEcharts.do", method = RequestMethod.POST)
@ResponseBody
public LineEchart deviceEcharts(HttpServletRequest request,
ModelMap modelMap) {
String startTime = request.getParameter("startTime");
String endTime = request.getParameter("endTime");
if (StringUtils.isEmpty(startTime)) {
startTime = "2015-05-14";
}
if (StringUtils.isEmpty(endTime)) {
endTime = "2015-05-25";
}
//LineEchart lineEchart = deviceService.getDeviceData();
LineEchart lineEchart = deviceService.getLineDataByName2(startTime,endTime);
return lineEchart;
}
@RequestMapping(value = "/showBarEcharts.do", method = RequestMethod.POST)
@ResponseBody
public BarEchart showBarEcharts(HttpServletRequest request,
ModelMap modelMap) {
String startTime = request.getParameter("startTime");
String endTime = request.getParameter("endTime");
if (StringUtils.isEmpty(startTime)) {
startTime = "2015-05-14";
}
if (StringUtils.isEmpty(endTime)) {
endTime = "2015-05-25";
}
BarEchart barEchart = deviceService.getBarDataByName(startTime, endTime);
return barEchart;
}
@RequestMapping(value = "/userAnalysisList.do")
public String userAnalysisList(HttpServletRequest request, ModelMap modelMap) {
return "/device/userAnalysisList";
}
@RequestMapping(value = "/userAnalysisAjax.do")
public String userAnalysisListAjax(HttpServletRequest request,
ModelMap modelMap) {
return "/device/userAnalysisAjax";
}
}
6.DeviceService.java
package com.tgb.web.service;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import com.tgb.web.dao.DeviceDao;
import com.tgb.web.dao.admin.SalesManageDao;
import com.tgb.web.entity.admin.salesoutput;
import com.tgb.web.pojo.BarEchart;
import com.tgb.web.pojo.LineEchart;
import com.tgb.web.pojo.SimpleBar;
import com.tgb.web.pojo.SimpleLine;
import com.tgb.web.util.DateUtil;
@Service
public class DeviceService {
@Resource
private DeviceDao deviceDao;
@Resource
private SalesManageDao saleManageDao;
SimpleDateFormat simpleFormat = new SimpleDateFormat("yyyy-MM-dd");
public LineEchart getDeviceData() {
List xdatas = new ArrayList();
xdatas.add("2015-2-3");
xdatas.add("2016-2-3");
xdatas.add("2017-2-3");
xdatas.add("2018-2-3");
xdatas.add("2019-2-3");
SimpleLine simple = new SimpleLine();
simple.setName("苹果");
List simpleLineDatas = new ArrayList();
simpleLineDatas.add("20");
simpleLineDatas.add("100");
simpleLineDatas.add("50");
simpleLineDatas.add("200");
simpleLineDatas.add("500");
simple.setData(simpleLineDatas);
List seriesList = new ArrayList();
seriesList.add(simple);
SimpleLine simple2 = new SimpleLine();
simple2.setName("桔子");
List simpleLineDatas1 = new ArrayList();
simpleLineDatas1.add("40");
simpleLineDatas1.add("200");
simpleLineDatas1.add("100");
simpleLineDatas1.add("400");
simpleLineDatas1.add("1000");
simple2.setData(simpleLineDatas1);
seriesList.add(simple2);
SimpleLine simple3 = new SimpleLine();
simple2.setName("西红柿");
List simpleLineDatas2 = new ArrayList();
simpleLineDatas2.add("400");
simpleLineDatas2.add("400");
simpleLineDatas2.add("200");
simpleLineDatas2.add("800");
simpleLineDatas2.add("2000");
simple3.setData(simpleLineDatas2);
seriesList.add(simple3);
LineEchart lineEchart = new LineEchart();
List legendDatas = new ArrayList();// //定义类型数组,设备数,用户数
legendDatas.add("苹果");
legendDatas.add("桔子");
legendDatas.add("西红柿");
lineEchart.setxDatas(xdatas);
lineEchart.setSeries(seriesList);
lineEchart.setLegendDatas(legendDatas);
return lineEchart;
}
public BarEchart getBarDeviceData() {
List xdatas = new ArrayList();
xdatas.add("2015-2-3");
xdatas.add("2016-2-3");
xdatas.add("2017-2-3");
xdatas.add("2018-2-3");
xdatas.add("2019-2-3");
SimpleBar simple = new SimpleBar();
simple.setName("蒸发量");
List bdata = new ArrayList();
bdata.add("40");
bdata.add("60");
bdata.add("100");
bdata.add("200");
bdata.add("50");
simple.setData(bdata);
List series = new ArrayList();
series.add(simple);
SimpleBar simple2 = new SimpleBar();
simple2.setName("降水量");
List bdata2 = new ArrayList();
bdata2.add("80");
bdata2.add("120");
bdata2.add("200");
bdata2.add("400");
bdata2.add("100");
simple2.setData(bdata2);
series.add(simple2);
BarEchart barEchart = new BarEchart();
barEchart.setxDatas(xdatas);
barEchart.setSeries(series);
return barEchart;
}
/**
* 操作折线图
*
* @param startTime
* @param endTime
* @return
*/
public LineEchart getLineDataByName2(String startTime, String endTime) {
DateUtil date = new DateUtil();
// 得到时间数组
List timeList = date.getDateArrByStartAndEndTime(startTime,
endTime);
List> bigList = new ArrayList>();
List salist = saleManageDao
.getSaleOutputDataByStatusGroupByGoodsname("0");
for (salesoutput sa : salist) {
List datalist = deviceDao
.getSaleOutputDataByManyFiled("", sa.getGoodsname(), "",
startTime, endTime, "0");
bigList.add(datalist);
}
List xdatas = new ArrayList();// 单个折线上所有的对应的日期
// SimpleLine simple = new SimpleLine();
// List simpleLineDatas = new ArrayList();// 单个折线上的数据
LineEchart lineEchart = new LineEchart();
List legendDatas = new ArrayList();// 图例数组
List seriesList = new ArrayList();// 折现数组
for (List li : bigList) {
xdatas.clear();//将横轴的日期数据清空,防止重复出现
List simpleLineDatas = new ArrayList();
for (String str : timeList) {
if (bigList.size() > 0) {
String data = "0";
for (salesoutput sa : li) {
if (str.equals(String.valueOf(simpleFormat.format(sa
.getInputdate())))) {
data = String.valueOf(sa.getSonum());
break;
}
}
simpleLineDatas.add(data);
} else {
simpleLineDatas.add("0");
}
xdatas.add(str);
}
SimpleLine simple = new SimpleLine();
for (salesoutput sa : li) {
legendDatas.add(sa.getGoodsname());
simple.setName(sa.getGoodsname());
break;
}
simple.setData(simpleLineDatas);
seriesList.add(simple);
lineEchart.setxDatas(xdatas);
lineEchart.setSeries(seriesList);
lineEchart.setLegendDatas(legendDatas);
}
return lineEchart;
}
/**
* 操作折线图
*
* @param startTime
* @param endTime
* @return
*/
public LineEchart getLineDataByName(String startTime, String endTime) {
DateUtil date = new DateUtil();
// 得到时间数组
List timeList = date.getDateArrByStartAndEndTime(startTime,
endTime);
List xdatas = new ArrayList();// 单个折线上所有的对应的日期
SimpleLine simple = new SimpleLine();
List simpleLineDatas = new ArrayList();// 单个折线上的数据
SimpleLine simple2 = new SimpleLine();
List simpleLineDatas2 = new ArrayList();// 单个折线上的数据
// 销售订单号,商品名称,商品编号,开始时间,结束时间 ,状态
List list = deviceDao.getSaleOutputDataByManyFiled("",
"苹果", "", startTime, endTime, "0");
List list2 = deviceDao.getSaleOutputDataByManyFiled("",
"西红柿", "", startTime, endTime, "0");
for (String str : timeList) {
if (list != null && list.size() > 0) {
String data = "0";
String data2 = "0";
for (salesoutput sa : list) {
if (str.equals(String.valueOf(simpleFormat.format(sa
.getInputdate())))) {
data = String.valueOf(sa.getSonum());
break;
}
}
for (salesoutput sa2 : list2) {
if (str.equals(String.valueOf(simpleFormat.format(sa2
.getInputdate())))) {
data2 = String.valueOf(sa2.getSonum());
break;
}
}
simpleLineDatas.add(data);
simpleLineDatas2.add(data2);
} else {
simpleLineDatas.add("0");
simpleLineDatas2.add("0");
}
xdatas.add(str);
}
simple.setName("苹果");
simple.setData(simpleLineDatas);
simple2.setName("西红柿");
simple2.setData(simpleLineDatas2);
List seriesList = new ArrayList();// 折现数组
seriesList.add(simple);
seriesList.add(simple2);
LineEchart lineEchart = new LineEchart();
List legendDatas = new ArrayList();// 图例数组
legendDatas.add("苹果");
legendDatas.add("西红柿");
lineEchart.setxDatas(xdatas);
lineEchart.setSeries(seriesList);
lineEchart.setLegendDatas(legendDatas);
return lineEchart;
}
/**
* 操作柱状图
*
* @param startTime
* @param endTime
* @return
*/
public BarEchart getBarDataByName(String startTime, String endTime) {
DateUtil date = new DateUtil();
// 得到时间数组
List timeList = date.getDateArrByStartAndEndTime(startTime,
endTime);
List xdatas = new ArrayList();// 单个折线上所有的对应的日期
SimpleBar simple = new SimpleBar();
List simpleBarDatas = new ArrayList();// 单个折线上的数据
SimpleBar simple2 = new SimpleBar();
List simpleBarDatas2 = new ArrayList();// 单个折线上的数据
// 销售订单号,商品名称,商品编号,开始时间,结束时间 ,状态
List list = deviceDao.getSaleOutputDataByManyFiled("",
"苹果", "", startTime, endTime, "0");
List list2 = deviceDao.getSaleOutputDataByManyFiled("",
"西红柿", "", startTime, endTime, "0");
for (String str : timeList) {
if (list != null && list.size() > 0) {
String data = "0";
String data2 = "0";
for (salesoutput sa : list) {
if (str.equals(String.valueOf(simpleFormat.format(sa
.getInputdate())))) {
data = String.valueOf(sa.getSonum());
break;
}
}
for (salesoutput sa2 : list2) {
if (str.equals(String.valueOf(simpleFormat.format(sa2
.getInputdate())))) {
data2 = String.valueOf(sa2.getSonum());
break;
}
}
simpleBarDatas.add(data);
simpleBarDatas2.add(data2);
} else {
simpleBarDatas.add("0");
simpleBarDatas2.add("0");
}
xdatas.add(str);
}
simple.setName("苹果");
simple.setData(simpleBarDatas);
simple2.setName("西红柿");
simple2.setData(simpleBarDatas2);
List seriesList = new ArrayList();// 折现数组
seriesList.add(simple);
seriesList.add(simple2);
BarEchart barEchart = new BarEchart();
List legendDatas = new ArrayList();// 图例数组
legendDatas.add("苹果");
legendDatas.add("西红柿");
barEchart.setxDatas(xdatas);
barEchart.setSeries(seriesList);
barEchart.setLegendDatas(legendDatas);
return barEchart;
}
}
ECharts 使用实例
HTML与JavaScript代码:
Django+Echarts画图实例
所有演示均基于Django2.0 阅读此篇文章你可以: 了解Django中aggregate和annotate函数的使用方法 获取一个Django+Echarts绘制柱状图的完整示例 需求说明 一张会 ...
Baidu - Echarts 地图实例测试,并绘制平滑圆弧路径
百度Echarts实例地址: http://echarts.baidu.com/examples.html 同事想做一个地图,地图上的几个点通过动态的线连接起来.但是在实例里没找到类似的. 然后仔细分 ...
百度地图和echarts结合实例
1.由echart对象(bmapChart)获取百度地图对象(bdMap),echart对象(bmapChart)适用于所有的echart的操作和接口,百度地图对象(bdMap)适用于百度地图的所有接 ...
webpack echarts配置实例
简单介绍 本例介绍怎样在webpack中构建依赖echats的项目,echarts有好几种方式引入项目: 标签单文件引入:自1.3.5開始,ECharts提供标签式引入.假设项目本身并非基于模块化开发 ...
echarts常用实例
1.柱状图: 1.需要动态加载的参数是x轴以及柱状图的数值,legendData和seriesData.demo使用是可以直接写死参数,在执行this.initChart()方法即可.具体代码可以参数 ...
echarts在.Net中使用实例(一) 简单的Demo
前言 这个必须要有前言,即便很短,对于有强迫症的人来说不容易啊.言归正传,之前做图一直使用rdlc自带的格式,虽然任务完成,但是一直觉得不太美观, 空余时间开始找其他的插件,终于找到了Highchar ...
Webstorm+Webpack+echarts构建个性化定制的数据可视化图表&;&;两个echarts详细教程(柱状图,南丁格尔图)
Webstorm+Webpack+echarts ECharts 特性介绍 ECharts,一个纯 Javascript 的图表库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(I ...
【Echarts每天一例】-1
官方网址:http://echarts.baidu.com/doc/example/line1.html 使用百度echarts官方实例:http://ask.csdn.net/questions/1 ...
随机推荐
js 判断pc端或手机端
OpenCV 之 边缘检测
上一篇 中,提到的图像平滑,从信号处理的角度来看,实际上是一种“低通滤波器”. 本篇中,数字图像的边缘,因为通常都是像素值变化剧烈的区域 (“高频”),故可 ...
Spring JdbcTemplate 的使用与学习
JDBCTemplate 是SPRING 框架自带的一种对sql 语句查询的封装 ,封装非常完善,虽然与Hibernate比起来有一点麻烦,但是学号JDBCTemplate可以让我们用Spirngmv ...
div中的字符换行
div中的字符换行 转载自:http://blog.sina.com.cn/s/blog_6a79bc480100tizi.html 1.强制不换行,同时以省略号结尾.
CART
一.为什么有CART回归树 以前学过全局回归,顾名思义,就是指全部数据符合某种曲线.比如线性回归,多项式拟合(泰勒)等等.可是这些数学规律多强,硬硬地将全部数据逼近一些特殊的曲线.生活中的数据可是千变 ...
CSS三角形制作样式
.triangle{ display: block; height: 0; position: absolute; width: 0; border: 9px solid; border-color: ...
Jquery笔记之第一天
1.使用Jquery 方法一:下载JQuery 方法二:使用CDN内容分发网络 常用的国内CDN: 百度: