- LPC1768运行threadx数组越界导致出现硬件错误死机问题的排查
Hawen-嵌入式
杂记单片机c语言汇编
移植了threadx后运行发现程序莫名跑飞,停留在HardFaultHandler即硬件错误异常调试过程中发现在汇编启动文件启动后跳转main函数即刻就发生了错误异常,先排除是在操作系统运行过程中的问题,而且是硬件错误异常所以先对导致改错误的可能进行排查,考虑到和产生硬件错误异常相关的几种可能1.数组越界操作2.内存溢出,访问越界3.堆栈溢出,程序跑飞4.中断处理错误;先是修改了启动文件中的栈大小
- computer architecture总结
Akimoto Akira
MIPSpipeline
目录MIPS64流水线处理器原理与优化技术1.流水线基本原理MIPS流水线基本工作原理2.流水线的指令级优化技术分支优化调度优化3.基于tomasulo算法的结构改进ARM汇编编程(基于恩智浦LPC1768)1.ARMV7寄存器结构2.ARM汇编指令的操作directivepseudo-instructioninstruction子程序3.异常处理4.混合编程MIPS64流水线处理器原理与优化技术
- USB初学(三)----图解USB协议一二三四
buzaibaibu
USB
我之前看了USBhid的协议,也看了一些USB的ppt,看了LPC1768的USBhid程序的例程,还是稀里糊涂的,看了很多,觉得这个图解的很不错,在我看的基础上,理解更深刻。图解USB协议一http://wenku.baidu.com/view/1cd952fb770bf78a652954f8.html图解USB协议二http://wenku.baidu.com/view/53bf396c1eb
- IAR报Warning[25]: Label 'HardFault_Handler' is defined pubweak in a section implicitly declared root
Curtain音学
KEIL或IAR编译链的使用
调试LPC1768单片机在iar7.1的单片机编译出现如下警告Warning[25]:Label'HardFault_Handler'isdefinedpubweakinasectionimplicitlydeclaredrootWarning[25]:Label'xxx'isdefinedpubweakinasectionimplicitlydeclaredroot解决办法:所有warming都
- 实现Cortex-M3内核芯片(如STM32,LPC1768)的boot升级跳转到APP操作
坐看风云变幻
单片机开发笔记
这篇文档主要讲解Cortex-M3内核的芯片怎样实现带有BOOT和APP分区程序功能,通过BOOT来给APP固件升级。先列出主要步骤:在BOOT中:重定位中断向量表到BOOT区首地址(必须)在跳转之前重置所有内部外设时钟包括Systick时钟,避免跳转时产生意外中断(可选)更改PC指针和SP堆栈指针,实现跳转(必须)在APP中:重定位中断向量表到APP区首地址(必须)接下来详细说明,先讲解一下我们
- LPC1768里的SPI驱动示例——基于SST25VF016B
快乐的老鼠
LPC17xx
这里有个坑,我的路虎开发板原理图上是AT45DB161这样的芯片,实际上丝印却是SST25VF016B,这两个器件都是存储设备,但是它们不是pin对pin的,这里大家需要注意下!!!/********************(C)COPYRIGHT2008STMicroelectronics*********************FileName:spi_flash.h*Author:MCDAp
- LPC1768更改IROM地址,用KEIL生成不了正常的.bin文件,而是生成奇怪的.bin文件夹
robert_66666
cotex-m3
最近做的一个远程升级项目,用的是LPC1768,为了实现升级的功能并将升级的固件文件下载到指定的Flash,需要更改IROM的开始地址和大小,在keil中的OptionforTarget中的Target选项卡中便可以对IROM的地址和大小做设置,设置之后编译生产的代码必须要下载到指定的Flash起始地址并满足设置的Flash大小才能让代码正常运行。如图,IROM地址做了如上更改。接下来我想用kei
- 通过SPI方式实现LPC17xx的远程升级设计
woshi_ziyu
我参加了CSDN2014博客之星大赛,请大家多多支持(每天都可以投一票哦)。http://vote.blog.csdn.net/blogstar2014/details?username=woshi_ziyu#content—————————————————————————————————————————————————————————————一、设计方案简介本方案基于NXP的LPC1768微处理
- Cortex-M3 LPC1768上电启动
zhuyonghao123
MCU
最近用到一块Cortex-M3芯片LPC1768,程序下载到Ram可以运行,下载到Flash没有断电之前可以运行,但是断电了再上电,经常出现启动不了,有时候也可以启动,有时候过一天再启动就可以启动了。测试从开始上电到电压稳定大概需要600us,复位引脚连接到了Jtag复位,没有上电复位,手册上面说需要接20ns延时的上电复位,怀疑有可能是这个问题。另一个可能的问题是LPC的晶振使用的是25MHz,
- Mbed在线编译器新手入门教程(图文)
liucuicui0000
mbed
第一步:登录http://developer.mbed.org/第二步、点击右上角的登录或注册账号笔者没有注册过,因此点击右侧的进行注册已经创建过账号的用户点击左侧,没有创建过粘好的用户点击右侧,笔者选择后者。填入用户信息,点击就可以注册完成了。第三步、登录后点击右上角的Compiler按钮,进入Compiler后的页面如下点击New选择Platform(开发平台),笔者这里选择LPC1768,T
- keil MDK C++编程编译方法简介
柯南粉
LPC1768
摘要:C++语言是C语言的超集,C++语言基本支持C语言的所有语法,但是C语言没有C++语言有关类(class)的语法。因此C++语言能够实现面向对象的编程,而C语言只能实现面向过程的编程。通常单片机编程使用C语言或汇编语言,很多时候我们也想使用对象来管理单片机的众多参量和函数,其实现在很多嵌入式C编译器已经实现了对C++语言的编译。本文使用keilMDK4.7编译环境对周立功LPC1768开发板
- 使用LPC1768实现的数字时钟和温度计
hulifox007
Others
手上有块LPC1768的开发板和一个320*240的液晶屏。就打算用它来做点东西。液晶屏使用的是SSD1289的控制芯片。使用16位并行接口连接到LPC1768的GPIO上。然后还有一块DS1623的温度传感器,也接到LPC1768的GPIO上。代码基本上是用c完成,没有使用任何OS。直接用gcc编译链接,下载到芯片的内存中运行。如果想烧到flash中的话,还需要一点点改动,基本上是启动后要将数据
- LPC1768 SSP0驱动示例——SD卡驱动
快乐的老鼠
LPC17xx
在STM32的SPI驱动上移植过来的,由于代码较长,这里只提供关键代码:/*SSPxSR-bitdefinitions.*/#defineTFE0x01#defineTNF0x02#defineRNE0x04#defineRFF0x08#defineBSY0x10/*******************************************************************
- SD卡SPI模式下FatFs与znFat文件系统速度比较
xmxqiyan
C
前段时间在SD卡上移植了FatFs文件系统,昨晚在QQ群中看到znFat,于是有了想测试一下两个文件系统的速度差异的想法。znFat移植很简单,就是在deviceio.c中写入相应的函数即可,然后配置config.h中的宏。今天在振南的协助下把速度配置到全速模式下。硬件平台:LPC1768使用SSP0,SSP0时钟50MHz测试文件wmv视频文件,大小:7375.689KB(7552706Byte
- LPC1768 SPI模式下SD卡FatFs文件系统移植
xmxqiyan
C
最近在LPC1768SPI模式下移植SD卡FatFs(版本R0.09a)文件系统成功,总结一下移植过程。一、底层驱动使用的SSP0的SPI模式驱动,SSP时钟开始使用的25M。SD卡驱动测试完成,可读写擦除测试没有问题之后开始文件系统移植。要用到的底层驱动函数有:MMCSD_TYPEMMCSD_Init(void)BOOLMMCSD_EraseBlocks(uint32_tblkStart,uin
- LPC1768实现精准延时——Systick的使用
爱工科的猫
ARMCortex3
今天在写用1768读取温度传感器DS18b20的程序,它是单总线的传感器,因此读写都需要按照手册上的时序。这是问题就来了,如何在1768中写一个尽可能精确us级延时函数?以前用51单片机写延时函数是用嵌套的for循环就能完成的,但是在ARM中我们是不能那么用的,因为它是三级流水线构架,不像51一样能计算出每条指令的时间。幸好Cortex-M3给我们提供了一个精准延时的方法——Systick定时器。
- marlin2.0 的使用过程记录。skr v1.3
eyhxh
3D打印机
硬件tb购入,主控是LPC1768,32位的。软件软件下载地址https://github.com/bigtreetech/BIGTREETECH-SKR-V1.3/tree/master/BTT%20SKR%20V1.3使用步骤之前用过MKS-GEN-L的3d打印主板。这个主板原理图和mega2560+ramps1.4基本一致,但是集成度高,实际使用还是不错的。这次购买了skrv1.3主板,以为
- LPC1768系统时钟配置-CPU时钟频率96MHz
不要让自己太懒
一、时钟的配置路线二、配置步骤PLL1的配置流程和PLL0一样。三、具体代码实现1.bsp_clk.c文件中的内容:/**bsp_clk.c**Createdon:2020年5月20日*Author:Mr.W*/#include"bsp_clk.h"/**************************************************************************
- ARM固件开发(LPC1768通过SPI接口快速读写flash,型号W25Q64FV)
XYMotion
一、外部Flash的硬件接口二、固件程序设计2.1SPI接口初始化/*Layerspecfication----------------------------------------------------------------------------------------------------------------------------------------------------
- ARM固件开发(LPC1768启动初始化代码)
XYMotion
一、复位ARM启动中需要配置上电复位功能,因为这样才能确保上电之后程序处于初始状态而并非程序指针未知。通常启动代码编译器自带,而程序入口基本上都是以复位中断开始。下面这一段启动代码会自动调用两个函数,分别是SystemInit系统上电初始化,主要进行时钟、锁相环等核心部分的配置main系统上电初始化之后,调用main函数,用户无需返回main函数;ResetHandlerReset_Handler
- 基于nxp LPC1768开发板的U盘MP3播放
szlovee
u盘mp3NXPLPC1768宝马开发板
本次使用宝马NXPLPC1768作为实验平台,将LPC1768作为USB主机,挂载U盘,通过读取U盘里面的MP3文件,传送给VS1003进行解码播放。VS1003是一个单片MP3/WMA/MIDI音频解码器和ADPCM编码器。它包含一个高性能,自主产权的低功耗DSP处理器核VS_DSP,工作数据存储器,为用户应用提供5KB的指令RAM和0.5KB的数据RAM。串行的控制和数据接口,4个常规用途的I
- Cortex-M3(NXP LPC 1788) 启动代码
XP
startup_LPC177x_8x.s启动代码分析。
参考资料:
Cortex-M3 (NXP LPC1788)之启动代码分析
ARM启动过程(Cortex-M3 NXP LPC1768为例)
;/*****************************************************************************
; * @fil
- elua跑起来了
NightCode
哈哈,这几天没有开发板,但又想玩eLua,只有翻译下eLua官方文档解解燃眉之急。今天果断找同学借了一块LPC1768,512KFlash,64K的RAM,很满足eLua的需要。最重要的是,elua0.8版本已经支持LPC1768,为了速度体验一下,直接从官方网站上下好一个编译好的二进制镜像,通过JLINK-FLASH下载成功,接着翻出USB转串口的板子,开始时真有点担心会不会成功,不过连接好后,
- 感慨下STM32的学习状况
NightCode
去年就买了个STM32的板子回来,每次都是断断续续的学习,感觉没学到个撒,没多久就忘了,再学又感觉是重新开始,做了很多重复的事情。这样导致了恶性循环。唉,现在时间充足了。前段时间本想深入学习elua,顺便就学习了LPC1768,可是天杀的遇到各种linux下的不懂问题,也找不到解决办法,遂放弃之,真心不甘,感觉对这个兴趣蛮浓的,竟然只是看着官方文档就津津有味。不能学习LPC1768,就计划学习ST
- LPC1768以太网控制器
mindthink
以太网通信LPC1768DP83848LPC1768
LPC1768以太网控制器本文记录LPC1768的以太网控制器学习使用心得。网卡芯片以DP83848C为例。主芯片内的以太网控制器(EMAC)位于ISO模型中的数据链路层,而外围网卡(PHY)位于ISO模型中的物理层。这两者通过RMII(简化的媒体独立接口)连接这样就可以一个简单的以太网通信了。下面通过分析函数来了解相应的知识。分析LPC1768的例程。、控制器初始化函数。StatusEMAC_I
- LPC1768之串口UART0
mindthink
LPC1768
*********************************************************************************************************/#include"LPC17xx.h"/*LPC17xx外设寄存器*//**********************************************************
- LPC1768@100MHz和LPC1788@120MHz的PLL0设置
Ropai
锁相环PLLLPC1768LPC1788cclk
对于搞软件开发的来说,弄一些硬件相关参数总觉得有点没底。做了几年,总算知道锁相环(PLL)的作用是把一个输入频率“放大”后输出,虽然对PLL的电路原理还是一窍不通。最近研究LPC1788和LPC1768的主频时发现两者的PLL0配置相差挺多的,于是耐着性子啃了Usermanual,总算理清楚了(作为软件开发者,某些太细节的硬件原理就不去深究了)。 首先LPC1788工作在120MHz
- USB初学(三)----图解USB协议一二三四
liuxd3000
我之前看了USBhid的协议,也看了一些USB的ppt,看了LPC1768的USBhid程序的例程,还是稀里糊涂的,看了很多,觉得这个图解的很不错,在我看的基础上,理解更深刻。图解USB协议一http://wenku.baidu.com/view/1cd952fb770bf78a652954f8.html图解USB协议二http://wenku.baidu.com/view/53bf3
- 嵌入式实验指导
倾心琴心
uC/OSARM嵌入式C嵌入式uCOSARMLPC1768C
基于路虎开发板的嵌入式实验指导作者:倾心琴心联系方式:
[email protected]指导主要有两个部分,一个是官方实验例程指导,一个是嵌入式实验课程实验指导,有错误之处欢迎批评指正。1、官方例程指导...21.1、LPC1768简要概述...21.2、路虎开发板概述...21.3、实验例程的讲解与学习...31.3.1ADC例程...41.3.2串口例程...152、嵌入式实验指导...232.
- USB初学(三)----图解USB协议一二三四
buzaibaibu
我之前看了USBhid的协议,也看了一些USB的ppt,看了LPC1768的USBhid程序的例程,还是稀里糊涂的,看了很多,觉得这个图解的很不错,在我看的基础上,理解更深刻。图解USB协议一http://wenku.baidu.com/view/1cd952fb770bf78a652954f8.html图解USB协议二http://wenku.baidu.com/view/53bf39
- JVM StackMapTable 属性的作用及理解
lijingyao8206
jvm字节码Class文件StackMapTable
在Java 6版本之后JVM引入了栈图(Stack Map Table)概念。为了提高验证过程的效率,在字节码规范中添加了Stack Map Table属性,以下简称栈图,其方法的code属性中存储了局部变量和操作数的类型验证以及字节码的偏移量。也就是一个method需要且仅对应一个Stack Map Table。在Java 7版
- 回调函数调用方法
百合不是茶
java
最近在看大神写的代码时,.发现其中使用了很多的回调 ,以前只是在学习的时候经常用到 ,现在写个笔记 记录一下
代码很简单:
MainDemo :调用方法 得到方法的返回结果
- [时间机器]制造时间机器需要一些材料
comsci
制造
根据我的计算和推测,要完全实现制造一台时间机器,需要某些我们这个世界不存在的物质
和材料...
甚至可以这样说,这种材料和物质,我们在反应堆中也无法获得......
 
- 开口埋怨不如闭口做事
邓集海
邓集海 做人 做事 工作
“开口埋怨,不如闭口做事。”不是名人名言,而是一个普通父亲对儿子的训导。但是,因为这句训导,这位普通父亲却造就了一个名人儿子。这位普通父亲造就的名人儿子,叫张明正。 张明正出身贫寒,读书时成绩差,常挨老师批评。高中毕业,张明正连普通大学的分数线都没上。高考成绩出来后,平时开口怨这怨那的张明正,不从自身找原因,而是不停地埋怨自己家庭条件不好、埋怨父母没有给他创造良好的学习环境。
- jQuery插件开发全解析,类级别与对象级别开发
IT独行者
jquery开发插件 函数
jQuery插件的开发包括两种: 一种是类级别的插件开发,即给
jQuery添加新的全局函数,相当于给
jQuery类本身添加方法。
jQuery的全局函数就是属于
jQuery命名空间的函数,另一种是对象级别的插件开发,即给
jQuery对象添加方法。下面就两种函数的开发做详细的说明。
1
、类级别的插件开发 类级别的插件开发最直接的理解就是给jQuer
- Rome解析Rss
413277409
Rome解析Rss
import java.net.URL;
import java.util.List;
import org.junit.Test;
import com.sun.syndication.feed.synd.SyndCategory;
import com.sun.syndication.feed.synd.S
- RSA加密解密
无量
加密解密rsa
RSA加密解密代码
代码有待整理
package com.tongbanjie.commons.util;
import java.security.Key;
import java.security.KeyFactory;
import java.security.KeyPair;
import java.security.KeyPairGenerat
- linux 软件安装遇到的问题
aichenglong
linux遇到的问题ftp
1 ftp配置中遇到的问题
500 OOPS: cannot change directory
出现该问题的原因:是SELinux安装机制的问题.只要disable SELinux就可以了
修改方法:1 修改/etc/selinux/config 中SELINUX=disabled
2 source /etc
- 面试心得
alafqq
面试
最近面试了好几家公司。记录下;
支付宝,面试我的人胖胖的,看着人挺好的;博彦外包的职位,面试失败;
阿里金融,面试官人也挺和善,只不过我让他吐血了。。。
由于印象比较深,记录下;
1,自我介绍
2,说下八种基本类型;(算上string。楼主才答了3种,哈哈,string其实不是基本类型,是引用类型)
3,什么是包装类,包装类的优点;
4,平时看过什么书?NND,什么书都没看过。。照样
- java的多态性探讨
百合不是茶
java
java的多态性是指main方法在调用属性的时候类可以对这一属性做出反应的情况
//package 1;
class A{
public void test(){
System.out.println("A");
}
}
class D extends A{
public void test(){
S
- 网络编程基础篇之JavaScript-学习笔记
bijian1013
JavaScript
1.documentWrite
<html>
<head>
<script language="JavaScript">
document.write("这是电脑网络学校");
document.close();
</script>
</h
- 探索JUnit4扩展:深入Rule
bijian1013
JUnitRule单元测试
本文将进一步探究Rule的应用,展示如何使用Rule来替代@BeforeClass,@AfterClass,@Before和@After的功能。
在上一篇中提到,可以使用Rule替代现有的大部分Runner扩展,而且也不提倡对Runner中的withBefores(),withAfte
- [CSS]CSS浮动十五条规则
bit1129
css
这些浮动规则,主要是参考CSS权威指南关于浮动规则的总结,然后添加一些简单的例子以验证和理解这些规则。
1. 所有的页面元素都可以浮动 2. 一个元素浮动后,会成为块级元素,比如<span>,a, strong等都会变成块级元素 3.一个元素左浮动,会向最近的块级父元素的左上角移动,直到浮动元素的左外边界碰到块级父元素的左内边界;如果这个块级父元素已经有浮动元素停靠了
- 【Kafka六】Kafka Producer和Consumer多Broker、多Partition场景
bit1129
partition
0.Kafka服务器配置
3个broker
1个topic,6个partition,副本因子是2
2个consumer,每个consumer三个线程并发读取
1. Producer
package kafka.examples.multibrokers.producers;
import java.util.Properties;
import java.util.
- zabbix_agentd.conf配置文件详解
ronin47
zabbix 配置文件
Aliaskey的别名,例如 Alias=ttlsa.userid:vfs.file.regexp[/etc/passwd,^ttlsa:.:([0-9]+),,,,\1], 或者ttlsa的用户ID。你可以使用key:vfs.file.regexp[/etc/passwd,^ttlsa:.: ([0-9]+),,,,\1],也可以使用ttlsa.userid。备注: 别名不能重复,但是可以有多个
- java--19.用矩阵求Fibonacci数列的第N项
bylijinnan
fibonacci
参考了网上的思路,写了个Java版的:
public class Fibonacci {
final static int[] A={1,1,1,0};
public static void main(String[] args) {
int n=7;
for(int i=0;i<=n;i++){
int f=fibonac
- Netty源码学习-LengthFieldBasedFrameDecoder
bylijinnan
javanetty
先看看LengthFieldBasedFrameDecoder的官方API
http://docs.jboss.org/netty/3.1/api/org/jboss/netty/handler/codec/frame/LengthFieldBasedFrameDecoder.html
API举例说明了LengthFieldBasedFrameDecoder的解析机制,如下:
实
- AES加密解密
chicony
加密解密
AES加解密算法,使用Base64做转码以及辅助加密:
package com.wintv.common;
import javax.crypto.Cipher;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
import sun.misc.BASE64Decod
- 文件编码格式转换
ctrain
编码格式
package com.test;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
- mysql 在linux客户端插入数据中文乱码
daizj
mysql中文乱码
1、查看系统客户端,数据库,连接层的编码
查看方法: http://daizj.iteye.com/blog/2174993
进入mysql,通过如下命令查看数据库编码方式: mysql> show variables like 'character_set_%'; +--------------------------+------
- 好代码是廉价的代码
dcj3sjt126com
程序员读书
长久以来我一直主张:好代码是廉价的代码。
当我跟做开发的同事说出这话时,他们的第一反应是一种惊愕,然后是将近一个星期的嘲笑,把它当作一个笑话来讲。 当他们走近看我的表情、知道我是认真的时,才收敛一点。
当最初的惊愕消退后,他们会用一些这样的话来反驳: “好代码不廉价,好代码是采用经过数十年计算机科学研究和积累得出的最佳实践设计模式和方法论建立起来的精心制作的程序代码。”
我只
- Android网络请求库——android-async-http
dcj3sjt126com
android
在iOS开发中有大名鼎鼎的ASIHttpRequest库,用来处理网络请求操作,今天要介绍的是一个在Android上同样强大的网络请求库android-async-http,目前非常火的应用Instagram和Pinterest的Android版就是用的这个网络请求库。这个网络请求库是基于Apache HttpClient库之上的一个异步网络请求处理库,网络处理均基于Android的非UI线程,通
- ORACLE 复习笔记之SQL语句的优化
eksliang
SQL优化Oracle sql语句优化SQL语句的优化
转载请出自出处:http://eksliang.iteye.com/blog/2097999
SQL语句的优化总结如下
sql语句的优化可以按照如下六个步骤进行:
合理使用索引
避免或者简化排序
消除对大表的扫描
避免复杂的通配符匹配
调整子查询的性能
EXISTS和IN运算符
下面我就按照上面这六个步骤分别进行总结:
- 浅析:Android 嵌套滑动机制(NestedScrolling)
gg163
android移动开发滑动机制嵌套
谷歌在发布安卓 Lollipop版本之后,为了更好的用户体验,Google为Android的滑动机制提供了NestedScrolling特性
NestedScrolling的特性可以体现在哪里呢?<!--[if !supportLineBreakNewLine]--><!--[endif]-->
比如你使用了Toolbar,下面一个ScrollView,向上滚
- 使用hovertree菜单作为后台导航
hvt
JavaScriptjquery.nethovertreeasp.net
hovertree是一个jquery菜单插件,官方网址:http://keleyi.com/jq/hovertree/ ,可以登录该网址体验效果。
0.1.3版本:http://keleyi.com/jq/hovertree/demo/demo.0.1.3.htm
hovertree插件包含文件:
http://keleyi.com/jq/hovertree/css
- SVG 教程 (二)矩形
天梯梦
svg
SVG <rect> SVG Shapes
SVG有一些预定义的形状元素,可被开发者使用和操作:
矩形 <rect>
圆形 <circle>
椭圆 <ellipse>
线 <line>
折线 <polyline>
多边形 <polygon>
路径 <path>
- 一个简单的队列
luyulong
java数据结构队列
public class MyQueue {
private long[] arr;
private int front;
private int end;
// 有效数据的大小
private int elements;
public MyQueue() {
arr = new long[10];
elements = 0;
front
- 基础数据结构和算法九:Binary Search Tree
sunwinner
Algorithm
A binary search tree (BST) is a binary tree where each node has a Comparable key (and an associated value) and satisfies the restriction that the key in any node is larger than the keys in all
- 项目出现的一些问题和体会
Steven-Walker
DAOWebservlet
第一篇博客不知道要写点什么,就先来点近阶段的感悟吧。
这几天学了servlet和数据库等知识,就参照老方的视频写了一个简单的增删改查的,完成了最简单的一些功能,使用了三层架构。
dao层完成的是对数据库具体的功能实现,service层调用了dao层的实现方法,具体对servlet提供支持。
&
- 高手问答:Java老A带你全面提升Java单兵作战能力!
ITeye管理员
java
本期特邀《Java特种兵》作者:谢宇,CSDN论坛ID: xieyuooo 针对JAVA问题给予大家解答,欢迎网友积极提问,与专家一起讨论!
作者简介:
淘宝网资深Java工程师,CSDN超人气博主,人称“胖哥”。
CSDN博客地址:
http://blog.csdn.net/xieyuooo
作者在进入大学前是一个不折不扣的计算机白痴,曾经被人笑话过不懂鼠标是什么,