第四步:                  别名不区分大小写;入参为基本类型,#{可以随便写}

把静态资源(jsp、css、js、fonts)导入到项目中

第五步:

创建Contrller类(和普通java类没有太大区别),@Contrller配置为控制器,看jsp页面怎么跳的,jsp页面跳转用了一级目录,所以@RequestMapping配置了一级目录(customer)。

package com.itheima.crm.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

/**
* 客户信息请求处理
* @author dell
*
*/
@Controller
@RequestMapping("customer")
public class CustomerController {

@RequestMapping("list")                   
        public String list() {                // 开发中用的最多的也是返回字符串
        return "customer";   //  return 一个视图名字,配置了前缀和后缀
        }

}

第六步:

如图.客户来源,行业,级别的设置

(1)持久层

(2)建立对应的模型(pojo)

(3)配置mapper.xml

(4)控制层

(5)图中("002")  ("001")   ("006")有硬编码嫌疑,抽取一个文件

之前有用工具类来调用,这次换一个方法,

既然applicationContext_dao.xml可以这么配置,用,那么springMVC也可以                   因为是controller中加载,所以要在springMVC中配置

具体在controller中怎么使用,如下

疑问是  (1)Model,定义好的类

(2)应该是方法中返回customer就是在customer.jsp中设置了这三个Model

(3)为什么返回一个BaseDict,页面中用到BaseDict的很多信息,也是固定用法,方便访问,一步就位

ssm学习的第一个demo---crm(2)的更多相关文章

  1. ssm学习的第一个demo---crm(1)

    这是一个普通的CRM项目 (第一步规划好项目设计路线:导入jar包→配置sqlMapConfig.xml(空文件)→配置applicationContext.xml →配置springMVC.xml→ ...

  2. ssm学习的第一个demo---crm(4)

    (1)在crm系统中点击修改弹出了修改的框,这个使用bootstrap做的,然后看jsp代码,找到 用editCustomer,按Ctrl+k找到了次函数,edit.action没有,创建 (2)去持 ...

  3. ssm学习的第一个demo---crm(3)

    (1)写查询客户的sql语句 疑问很多,第一个是第五行的后面属性为什么不能加c.:    别名 第二个是对左连接不太明白: 第三个下面的条件,第一个是(马)就够了,为什么还要下面三个(对应的jsp页面 ...

  4. AngularJS学习:第一个demo

    1. 引入angular.js 相应版本下载地址: https://code.angularjs.org/ 2. 编写html <!DOCTYPE html> <html> & ...

  5. Android 通知栏Notification的整合 全面学习 (一个DEMO让你完全了解它)

    在android的应用层中,涉及到很多应用框架,例如:Service框架,Activity管理机制,Broadcast机制,对话框框架,标题栏框架,状态栏框架,通知机制,ActionBar框架等等. ...

  6. Cocos2d-x 学习(1)—— 通过Cocos Studio创建第一个Demo

    近期在工作上有了比較大的转变,自学情绪也慢慢高涨,本来一直在研究unity的技术.由于换了工作会開始接触cocos2d-x.但并不意味着停止研究unity,以后有时间还是会继续的. 公司的cocos2 ...

  7. Android 通知栏Notification的整合 全面学习 (一个DEMO让你全然了解它)

    在android的应用层中,涉及到非常多应用框架.比如:Service框架,Activity管理机制,Broadcast机制,对话框框架,标题栏框架,状态栏框架.通知机制,ActionBar框架等等. ...

  8. 【转】 [置顶] Android 通知栏Notification的整合 全面学习 (一个DEMO让你完全了解它)

    在Android的应用层中,涉及到很多应用框架,例如:Service框架,Activity管理机制,Broadcast机制,对话框框架,标题栏框架,状态栏框架,通知机制,ActionBar框架等等. ...

  9. angular开发者吐槽react+redux的复杂:“一个demo证明你的开发效率低下”

    曾经看到一篇文章,写的是jquery开发者吐槽angular的复杂.作为一个angular开发者,我来吐槽一下react+redux的复杂. 例子 为了让大家看得舒服,我用最简单的一个demo来展示r ...

随机推荐

  1. <亲测>centos安装 .net core 2.1

    https://www.microsoft.com/net/learn/get-started-with-dotnet-tutorial#install .NET Tutorial - Hello W ...

  2. Selenium2+python自动化38-显式等待(WebDriverWait)

    From: https://www.cnblogs.com/yoyoketang/p/6517477.html 前言: 在脚本中加入太多的sleep后会影响脚本的执行速度,虽然implicitly_w ...

  3. Lucene 特殊字符的问题

    SolrQuerySyntax http://wiki.apache.org/solr/SolrQuerySyntax solr的处理方式: https://svn.apache.org/repos/ ...

  4. java设计模式-Observer(2)

    一.模拟AWT事件处理 回顾一下JDK里面按下一个Button,有件事发生,这个东西怎么写: package com.cy.dp.observer.awt; import java.awt.Butto ...

  5. redis集群服务启动

    1 启动redis服务器 redis-server.exe redis.windows.conf 需要配置config节点的bind ip 2 启动redis集群 开启redis.xx.conf 服务 ...

  6. 保存chrome主题背景的图片

    chrome主题背景的图怎样可以保存下来? 在chrome地址栏中输入: chrome://theme/IDR_THEME_NTP_BACKGROUND?npebkpkiddfadallfhefpip ...

  7. 动态材质实例(Dynamic Material Instance)

    转自:http://blog.csdn.net/panda1234lee/article/details/62041775 本例将通过 “靠近影响椅子的颜色” 来展示什么是 动态材质实例(Dynami ...

  8. c# 未能加载文件或程序集

    最近做项目时碰到这个问题了,goole.百度了半天,整理了以下几种可能: DLL文件名与加载时的DLL文件名不一致, DLL文件根本不存在,即出现丢失情况, 加载DLL路径错误,即DLL文件存在,但加 ...

  9. tcp粘包解决

    import socket import hashlib import subprocess import struct phone = socket.socket(socket.AF_INET,so ...

  10. Getting Physical With Memory.CPU如何操作内存

    原文标题:Getting Physical With Memory 原文地址:http://duartes.org/gustavo/blog/ [注:本人水平有限,只好挑一些国外高手的精彩文章翻译一下 ...