以下是使用Spring、SpringMVC、MyBatis实现设备的条件查询的代码示例:

  1. 设备实体类 Device.java
public class Device {
    private Integer id;
    private String name;
    private String manufacturer;
    // 省略其他属性和getter/setter方法
}
  1. 设备DAO接口 DeviceDao.java
public interface DeviceDao {
    List<Device> findByConditions(@Param("name") String name, @Param("manufacturer") String manufacturer);
}
  1. 设备DAO实现类 DeviceDaoImpl.java
@Repository
public class DeviceDaoImpl implements DeviceDao {

    @Autowired
    private SqlSession sqlSession;

    @Override
    public List<Device> findByConditions(String name, String manufacturer) {
        Map<String, Object> params = new HashMap<>();
        params.put("name", name);
        params.put("manufacturer", manufacturer);
        return sqlSession.selectList("findByConditions", params);
    }
}
  1. 设备Service接口 DeviceService.java
public interface DeviceService {
    List<Device> findByConditions(String name, String manufacturer);
}
  1. 设备Service实现类 DeviceServiceImpl.java
@Service
public class DeviceServiceImpl implements DeviceService {

    @Autowired
    private DeviceDao deviceDao;

    @Override
    public List<Device> findByConditions(String name, String manufacturer) {
        return deviceDao.findByConditions(name, manufacturer);
    }
}
  1. 设备Controller类 DeviceController.java
@Controller
@RequestMapping("/device")
public class DeviceController {

    @Autowired
    private DeviceService deviceService;

    @RequestMapping("/search")
    public String searchDevices(Model model, @RequestParam(required = false) String name,
                                @RequestParam(required = false) String manufacturer) {
        List<Device> devices = deviceService.findByConditions(name, manufacturer);
        model.addAttribute("devices", devices);
        model.addAttribute("name", name);
        model.addAttribute("manufacturer", manufacturer);
        return "deviceList";
    }
}
  1. 设备查询页面 deviceList.jsp
<form action="/device/search" method="get">
    <label for="name">设备名称:</label>
    <input type="text" name="name" value="${name}" />

    <label for="manufacturer">制造商:</label>
    <select name="manufacturer">
        <option value="">请选择</option>
        <option value="制造商1">制造商1</option>
        <option value="制造商2">制造商2</option>
        <option value="制造商3">制造商3</option>
    </select>

    <input type="submit" value="查询" />
</form>

<table>
    <tr>
        <th>设备名称</th>
        <th>制造商</th>
    </tr>
    <c:forEach items="${devices}" var="device">
        <tr>
            <td>${device.name}</td>
            <td>${device.manufacturer}</td>
        </tr>
    </c:forEach>
</table>

以上代码实现了按照设备名称和制造商进行条件查询,并且可以回显查询条件。设备名称和制造商使用了@RequestParam注解接收查询参数,查询结果使用Model对象传递到前端页面进行展示。制造商的下拉框数据是动态获取的,可以根据实际情况进行修改

2	设备的条件查询共20分A可以按照设备名称模糊查询;5分B可以按照制造商查询5分制造商要使用下拉框动态获取数据;5分D查询条件回显;5分代码用使用Spring、SpringMVC、MyBatis

原文地址: http://www.cveoy.top/t/topic/iJsl 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录